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框架的简单操作
- 创建项目:
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服务的更多相关文章
- Django框架02 /Django下载安装、url路由分发
Django框架02 /Django下载安装.url路由分发 目录 Django框架02 /Django下载安装.url路由分发 1. django下载安装 2. pycharm创建项目 3. 基于D ...
- Django框架 (七) Django ORM模型
ORM简介 查询数据层次图解:如果操作mysql,ORM是在pymysq之上又进行了一层封装
- Django框架(一)-Django初识
Django初识 一.Web框架本质—自己实现Web框架 1.所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端 import socket sk = sock ...
- django框架基础-django redis-长期维护-20191220
############### django框架-django redis ############### # 学习django redis我能得到什么? # 1,项目中广泛使用到redis ...
- django框架搭建web服务
一.工具 环境:windows 7 python 2.7.7 下载地址:https://www.python.org/downloads/release/python-2713/ ps:这 ...
- Django框架(四) Django之视图层
视图函数 一个视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应.响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. . ...
- Django框架(六) Django之模板继承
模版导入和继承 模版导入 一个页面只能继承一个模板,如何解决了?如何使用多个模板,或者引入其他页面 <% include "a.html" %> 可以引用多次 模板,i ...
- Django框架(十) Django之模型进阶
QuerySet对象 可切片 使用Python 的切片语法来限制查询集记录的数目 .它等同于SQL 的LIMIT 和OFFSET 子句. Entry.objects.all()[:5] # (LIMI ...
- Django框架(九) Django之ORM常用字段和参数
ORM字段 AutoField int自增列,必须填入参数 primary_key=True.当model中如果没有自增列,则自动会创建一个列名为id的列. IntegerField 一个整数类型,范 ...
随机推荐
- Linux能ping通IP,ping不通域名
今天碰到个问题, 能ping通IP地址, ping不通域名, 一直以为是 DNS解析服务器的问题, 找了半天. 问题不在这里. [root@www postfix]# cat /etc/resolv. ...
- 维护的JSP站点数据丢失
两个月前换了份工作,然后接手了三台server.上面乱七八糟的网站和应用大把. 当中有维护一个瀚石苑:http://www.hanshiyuan.com/.三天两头的丢失数据. 都不知道怎么找回,好在 ...
- javascript 左侧菜单
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- BZOJ 1082 暴搜
思路: //By SiriusRen #include <cstdio> #include <cstring> #include <algorithm> using ...
- Java:网络传输
网络以字节码传输 String s = "我恨你"; //转成字节: byte[] brr = s.getBytes();//gbk //iE:utf-8 String s1 = ...
- 【Django】视图系统
目录 FBV 与 CBV 给视图加装饰器 使用装饰器装饰CBV 关于dispatch()方法 Request对象 与 Response对象 request对象 response对象 @ *** 一个视 ...
- Django and Scrapy 用法图片
- 【2017 Multi-University Training Contest - Team 1 1011】KazaQ's Socks
[Link]:http://acm.hdu.edu.cn/showproblem.php?pid=6043 [Description] 一个人壁橱里有n双袜子,每天早上取一双最小下标的袜子,然后晚上放 ...
- HTTP基础知识整理
http请求由三部分组成,分别是:请求行.消息报头.请求正文 HTTP(超文本传输协议)是一个基于请求与响应模式的.无状态的.应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接 ...
- pix格式的一些摸索
作者:朱金灿 来源:http://blog.csdn.net/clever101 以前因为工作关系研究过PCI的系统格式pix,但是遗留了一些问题,最近又想重新解决这些问题.研究了一天,有些收获,但是 ...