zoukankan      html  css  js  c++  java
  • 3/18 Django框架 启动django服务

    web框架:本质是socket服务端,socket通常也被称为“套接字”,用于描述IP地址和端口,是一个通信链的句柄,可以用来实现不同虚拟机或不同计算机之间的通信。web框架就是将web应用开发中通用的部分抽象出来,形成一个框架,再去实现特定的功能。

    对于真实开发中的python web程序来说,一般会分为两部分:服务器程序和应用程序。

    服务器程序:将socket服务端进行封装,接受HTTP请求,发送HTTP响应。这些工作比较繁琐,由专门的软件执行,如Apache、Nginx等。

    应用程序:负责具体的业务逻辑。比如用户输入账号和密码,服务器程序接收请求后,将请求转发给web应用框架,框架和数据库交互、处理好请求后,再将请求转发给服务器程序,再由服务器程序返回给用户。

    WSGI:WSGI(Web Server Gateway Interface )是位于服务器程序与web应用程序之间的一种接口。WSGI更像是一种协议,它提供一个函数,由服务器来调用,只要满足条件,应用程序就可以在服务器上运行。WSGI函数需要提供两个参数:

    def application(environ, start_response):
    start_response('200 OK', [('Content-Type', 'text/html;
    charset=utf-8')])
    return '[<h1>你好, django!</h1>.encode()']
    environ:包含所有HTTP请求信息的dict对象;
    start_response:发送HTTP响应的函数。

    常用的web框架:

    • django:全能型
    • tornado:优秀的异步框架
    • web.py:小巧的web框架
    • flask:优秀的轻量级web框架

    设计模式:MTV、MVC等

    2.django框架介绍

    准备环境

    • ubuntu
    • python3.5+
    • Pycharm 2017.1.5+专业版
    • MYSQL
      每创建一个新的django项目,都要新建一个python隔离环境

    3.django框架的简单操作

    1. 创建项目:django-admin startproject <projectname>
      cd~ | mkdir project | cd project | django-admin startproject crm |cd crm|crm下的crm就是项目的根目录,和manager.py同一层
      2.pycharm创建项目远程关联 add python interpreter | Tools - Development -Configuration:改name、Connection里的Root path改为虚拟环境文件存放位置,Mappings里的Deployment Path改为"/"
      3.启动服务
    • 命令行:python manager.py runserver ip:port ip:0.0.0.0 / 0 在项目根目录下
      也可以用pycharm远程连接虚拟机启动服务
      乱码问题:settings-SSH terminal-default encoding改为utf-8
    • pycharm配置:Add Configuration - + - Django server - Host改为0.0.0.0
      settings-django- enabled django support - root改为本地项目根目录 settings改为 crm/settings.py

    4.第一个视图

    项目和应用

    • 创建一个应用 命令: python manager.py startapp <name>
  • 相关阅读:
    C# fields Study
    单词1
    C# Base Class Study
    C# Type Parameters Study
    C#3.0学习系列类的成员
    美国式教育
    单词2
    项目添加Struts2支持,并修改默认后缀
    Java多线程的学习和应用
    SQL PIVOT
  • 原文地址:https://www.cnblogs.com/tz201809015/p/10559120.html
Copyright © 2011-2022 走看看