Please enable JavaScript.
Coggle requires JavaScript to display documents.
Django学习, Hello Django, MVC, Django, CS/BS - Coggle Diagram
Django学习
Hello Django
9、数据惭怍
数据查询
模型.object.all()
模型.object.get()
更新
基于查询
save()
存储数据
创建对象进行save()
删除
基于查询
delete()
增删改查
10、显示在模板中
在填坑
上下文是一个字典{var:value}
key就是var,value就是要传入的值
模板渲染的时候上下文传递进来
模板的兼容性很强
不传入不会报错
多传入也会自动优化掉
先挖坑
{{var}}
浏览器不认模板
在到达浏览器之前,已经进行了转化。将模板装华为html
for支持
1、虚拟环境
deactivate
退出虚拟环境
workon
再次进入虚拟环境
mkvirtualenv
创建虚拟环境
rmvirtualenv
删除虚拟环境
6、请求流程
Browse->urls
models->views
views->models
views->response
5、创建一个应用
python manage.py startapp App
App结构
models
模型
apps
应用配置
views
视图函数
tests
单元测试
init
migrations
init
迁移目录
将应用注册到项目的setting中的INSTALLED_APPS中
8、连接数据库
默认在django中集成数据库
轻量级数据库
没用户名,没密码
SOLite
常用的场景 Android,IOS,WP
修改数据库
实际上都是关系型数据库
mysql
驱动
mysql-python
pymysql
会伪装
最好用,最常用
install_as_mysqldb()
mysqlcient
USER
PASSWORD
HOST
PORT
NAME
连接数据库的名字
ENGINE
引擎
在settings中的DATABASES中进行修改
迁移
生成迁移
python manage.py makemigrations
执行迁移
python manage.py migratiate
才会真正的在数据库产生表
2、安装
pip install django==1.11.7
pip install django==1.11.7 -i
https://pypi.douban.com/simple
3、创建项目
django-admin startproject XXX
项目结构
XXX
manage.py
管理整个项目结构
以后的命令基本都通过它来调用
XXX
init
setting
项目全局配置文件
urls
根路由
wsgi
用在新项目部署上,前期用不上
7、编写一个请求
编写一个路由
url(p1,p2)
p1 正则匹配规则
urlpatterns
p2 对应的视图函数
编写视图函数
只是默认第一个参数是response
必须返回response
HttpResponse
render
渲染
简写
本质上还是一个函数
4、启动项目
python manage.py runserver
默认运行在本机的8000端口上
还可以添加参数
使用开发者项目服务器
{[ip:]port}
0.0.0.0
代表本机所有的ip
11、数据级联
foreignKey
多记一
一获取多
多的set
一对多
多获取一
就是一个书写的属性
MVC
Controal
控制器
接受用户输入
用来协调Model与View的关系,并对数据进行操作,筛选
流程
控制器接受用户请求
调用模型,获取数据
控制器将数据展示到视图中
Model
封装数据和交互操作
CRUD
模型
View
视图
是用来将数据呈现给用户
软件架构风格
不是标准
核心思想:解耦合
松耦合
将数据操作、业务处理、界面展示进行了拆分
Django
MVT
Model:负责业务对象与数据库(ORM)的对象
View:负责业务逻辑,并在适当的时候调用Model和Template
Template:负责把页面展示给用户
Django中还有一个url分发器(也可以叫做路由),主要用来将一个个URL页面的请求分发给不同的View进行处理,View再调用相应的Model和Template。
MVC
View:负责数据的显示和呈现,View是对用户的直接输出
Controller:负责从用户端收集用户的输入,可以看成提供View的反向功能,主要处理用户交互。
Model:用于封装与应用程序的业务逻辑相关的数据及对数据的处理方法,是Web应用程序中用于处理应用程序的数据逻辑部分,Model通常只提供功能性的接口,通过这些接口可以获取Model的所有功能
CS/BS
客户端和服务器交互模型
Server
Web后端
Python
Django
Flask
Java
Php
Go
Client
Browser