Django知识点总结
1、Django简介
Python下有多款不同的 Web 框架,Django是最有代表性的⼀种。许多成功的⽹站和APP都基于Django。
Django是⼀个开源的Web应⽤框架,由Python写成。
Django采⽤了MVC的软件设计模式,即模型M,视图V和控制器C。
2、Django的特点
1) 强⼤的数据库功能:⽤python的类继承,⼏⾏代码就可以拥有⼀个动态的数据库操作API,如果需要也能执⾏SQL语句。
2) ⾃带的强⼤的后台功能:⼏⾏代码就让⽹站拥有⼀个强⼤的后台,轻松管理内容。
3) 优雅的⽹址:⽤正则匹配⽹址,传递到对应函数。
4) 模板系统:强⼤,易扩展的模板系统,设计简易,代码和样式分开设计,更易管理。
5) 缓存系统:与memcached或其它缓存系统联⽤,表现更出⾊,加载速度更快。
6) 国际化:完全⽀持多语⾔应⽤,允许你定义翻译的字符,轻松翻译成不同国家的语⾔。
3、Django项⽬⽬录
1) urls.py:⽹址⼊⼝,关联到对应的views.py中的⼀个函数(或generic类),访问⽹址就对应⼀个函数。
2) views.py:处理⽤户发出的请求,与urls.py对应, 通过渲染templates中的⽹页可以将显⽰内容,如登陆后的⽤户名,⽤户请求的数据等输出到⽹页。
3) models.py:与数据库操作相关,存⼊或读取数据时⽤到,⽤不到数据库时可以不使⽤。
4) forms.py:表单,⽤户在浏览器上输⼊数据提交,对数据的验证⼯作以及输⼊框的⽣成等⼯作,也可以不使⽤。
5) templates⽂件夹:views.py中的函数渲染templates中的html模板,得到动态内容的⽹页,可以⽤缓存来提⾼速度。
6) admin.py:后台,可以⽤很少的代码就拥有⼀个强⼤的后台。
7) settings.py:Django 的配置⽂件,如 DEBUG 的开关,静态⽂件的位置等。
4、Django基本命令
1) 新建⼀个项⽬:
1. django-admin.py startproject project-name
在 windows 上如果报错,尝试⽤ django-admin 代替 django-admin.py 。
2) 新建⼀个APP:
1. python manage.py startapp app-name
或
1. django-admin.py startapp app-name
⼀般⼀个项⽬有多个app, 当然通⽤的app也可以在多个项⽬中使⽤。
3) 启动服务器:
1. python manage.py runserver 0.0.0.0:8000
或
1. python manage.py runserver
前者让其它电脑可连接到服务器,监听机器上所有ip的8000端⼝,访问时⽤电脑的ip代替 127.0.0.1(8000为端⼝号,如果不说明,则端⼝号默认为8000);后者在本电脑访问服务器,访问时ip为127.0.0.1。
5、视图与⽹址
views.py:
from django.http import HttpResponse
def helloWorld(request):
return HttpResponse("Hello world! ")
urls.py:
f.urls import url
from . import view
urlpatterns = [
url(r'^$', view.helloWorld)
]
7、Django模型
Django 对各种数据库提供了很好的⽀持,Django 为数据库提供了统⼀的调⽤API,可以根据业务需求选择不同的数据库。
以MYSQL数据库为例,安装 mysql 驱动的命令:sudo pip install mysqlclient。
1) 数据库配置
在项⽬的settings.py⽂件中到 DATABASES 配置项,将其信息修改为:
DATABASES = {
'default': {
'ENGINE': 'django.sql', # 或者使⽤ tor.django
'NAME': 'test',
'USER': 'test',
'PASSWORD': 'test123',
'HOST':'localhost',
'PORT':'3306',
}
}
这⾥添加了中⽂注释,所以需要在settings.py ⽂件头部添加 # -*- coding: UTF-8 -*-。
2) 定义模型
① 创建APP:
Django规定,如果要使⽤模型,必须要创建⼀个app,使⽤以下命令创建⼀个app:python manage.py startapp TestModel。
② 修改 TestModel/models.py ⽂件:
类名代表了数据库表名,且继承了models.Model,类⾥⾯的字段代表数据表中的字段(name),数据类型则由CharField(相当于varchar)、DateField(相当于datetime), max_length 参数限定长度。
③ 在settings.py中到INSTALLED_APPS这⼀项,添加:'TestModel'。
④ 在命令⾏中运⾏以下命令,创建数据表,表名为应⽤名_类名(如:TestModel_test):
python新建项目教程
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论