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>

3/18 Django框架 启动django服务的更多相关文章

  1. Django框架02 /Django下载安装、url路由分发

    Django框架02 /Django下载安装.url路由分发 目录 Django框架02 /Django下载安装.url路由分发 1. django下载安装 2. pycharm创建项目 3. 基于D ...

  2. Django框架 (七) Django ORM模型

    ORM简介 查询数据层次图解:如果操作mysql,ORM是在pymysq之上又进行了一层封装

  3. Django框架(一)-Django初识

    Django初识 一.Web框架本质—自己实现Web框架 1.所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端 import socket sk = sock ...

  4. django框架基础-django redis-长期维护-20191220

    ###############   django框架-django redis    ############### # 学习django redis我能得到什么? # 1,项目中广泛使用到redis ...

  5. django框架搭建web服务

    一.工具 环境:windows 7 python 2.7.7     下载地址:https://www.python.org/downloads/release/python-2713/   ps:这 ...

  6. Django框架(四) Django之视图层

    视图函数 一个视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应.响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. . ...

  7. Django框架(六) Django之模板继承

    模版导入和继承 模版导入 一个页面只能继承一个模板,如何解决了?如何使用多个模板,或者引入其他页面 <% include "a.html" %> 可以引用多次 模板,i ...

  8. Django框架(十) Django之模型进阶

    QuerySet对象 可切片 使用Python 的切片语法来限制查询集记录的数目 .它等同于SQL 的LIMIT 和OFFSET 子句. Entry.objects.all()[:5] # (LIMI ...

  9. Django框架(九) Django之ORM常用字段和参数

    ORM字段 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. IntegerField 一个整数类型,范 ...

随机推荐

  1. Servlet深入学习,规范,理解和实现(中)——深入理解Tomcat(一)

    心得:在写这篇博客之前.我大致阅读一些关于Tomcat的书籍和博客等资料.有些资料由于时间的关系,解说的Tomcat版本号太老.有些资料能够非常好的说明Tomcat整理结构和设计思想可是非常多重要的问 ...

  2. 保存数据同一时候查询保存数据记录的ID

    保存数据时同一时候取出该数据的记录ID insert into Table(a,b) values(1,2) select @@identity

  3. PIO Core

    PIO核概述 具有Avalon接口的并行输入/输出(parallel input/output - PIO)核,在Avalon存储器映射(Avalon Memory-Mapped Avalon-MM) ...

  4. SQL大小写金额转换

    --功能: 用于将小写的数值翻译成大写的字符串(支持到分,即小数点后两位) --入口参数:@decNum------数字型变量 --返回:字符串 --举例:select dbo.fn_ChnMoney ...

  5. 解决The requested resource is not available的办法

    1.问题描述: eclipse中使用tomcat来运行HelloWorld时出现The requested resource is not available. 在报错中有一行Setting prop ...

  6. HDU 4847 Wow! Such Doge!

    Wow! Such Doge! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)T ...

  7. MHP 宿舍摄像头在门卫显示方案

    通过VPN拨入公司内网,实现访问外网摄像头. 1.  宿舍和MHP公司各增加一条上网线路(可用移动) 2.宿舍处理:  2台带TF卡 摄像头,加入到萤石云端   130万摄像头+64G TF卡 3.宿 ...

  8. React开发实时聊天招聘工具 -第六章 登陆注册(1)

    1.基于cookie的用户认证 express 依赖 cookie-parser 2.axios语法: axios.get('/data').then(res=>{ if(res.status= ...

  9. ldd---程序所需要的动态链接库

    ldd本身不是一个程序,而仅是一个shell脚本:ldd可以列出一个程序所需要得动态链接库(so) [root@xiaolizi ~ ]$ ldd /usr/bin/ls linux-vdso.so. ...

  10. WMI获取进程CPU占用率

    Monitor % Process CPU Usage (specific process) http://www.tek-tips.com/viewthread.cfm?qid=395765 for ...