1.创建项目
django-admin startproject 项目名
进入到django项目中
2.创建应用
django-admin startapp 应用名
把项目打开到项目的根目录
3.配置文件
(1)注册app(防止迁移时报错)
(2)配置数据库(和数据库连接)
(3)配置模板目录(为渲染模板做准备)
4.编写模型类
5.迁移
(生成迁移文件、执行迁移文件)
python manage.py makemigrations(生成迁移文件)
python manage.py migrate(执行迁移文件)
7.创建超级用户
python manage.py createsuperuser
8.注册模型类
9.写视图(渲染模板)
10.配置路由--路由分发
11.渲染模板(render)
12.启动项目
python manage.py runserver
1.django请求的生命周期是什么?
http请求首先到达wsgi服务器,解析封装为request对象,交给web框架处理
。在框架中,中间件对请求进行进一步的处理(例如:csrf、session、路由匹配)
然后进行路由匹配,执行不同的视图函数,可能涉及到数据库的操作,模板渲染等。
最后将结果传递到中间件,封装为response响应对象。最后wsgi服务器将响应对象
转换为http报文,返回给浏览器。
2.什么是MVT?什么是MVC?
MVC模式:
M(Model):对数据层的访问,进行增删改查操作。
V(View):生成页面展示的HTML内容。
C(Controller):接收请求,处理业务逻辑,返回结果。
MVT模式:
M(Model):负责和数据库交互
V(View):进行业务处理
T(Templates):负责模板页面数据渲染。
3.网站访问的pv和uv分别是什么?
PV和UV都是网站流量统计指标。
PV:页面的浏览次数,用户每打开、刷新一次页面就记录一次
,多次打开会累计,不去重。
UV:页面的用户访问量,一天内站点的访问人数,一个用户访
问多次也只记为1,一般通过Cookie即可维护。
4.什么是跨域?跨域如何解决?
跨域是由于浏览器的同源策略限制的,浏览器不会承认未经确认
的跨域数据,在后端设置CORS头部解决跨域问题,也就是我们在
Django用的corsheaders中间件,他使用额外的HTTP头来告诉浏览器
,让运行在一个域名上的应用被访问来自不同源服务器上的指定
资源。
5.什么是cookie?
Cookie是由服务器生成,发送给浏览器,浏览器会将Cookie的key
/value保存到某个目录下的文本文件内,下次请求同一网站时自动
发送该Cookie给服务器
Cookie可以用来在某个WEB站点会话持久的保持状态
6.什么是session?
Session是另一个记录客户状态的机制,基于Cookie实现,不同的是
Cookie保存在客户端的浏览器中,而Session保存在服务器上。
客户端浏览器访问服务器的时候,服务器把客户端的信息以某种形式
记录在服务器上,这就是Session,客户端浏览器再次访问时只需要从
该Session中查找该客户的状态就可以了。
7.什么是session共享?
当服务器使用了负载均衡的时候,当多台服务器使用的都是同一套
网站的的代码,用户请求网站时,请求会被分发到不同的服务器上。
这种情况下,用户第一次请求时,在A服务器生成了Sessionid,但在B
服务器和C服务器并没有生成Sessionid,此时就会导致用户的登录状态
出现问题,各个服务器之间不能保持一致。
8.如何在django中实现重定向?
通过HttpREsponseRedirect或
是redirect实现
9.重定向使用什么状态码?
永久重定向:301
临时重定向:302
10.orm如何进行数据库的反向迁移?
反向迁移就是当数据库已经建立好之后,我们希望可以在Django中利用ORM
操作这些已有的表,那么通过ORM的反向迁移操作把已有的SQL表结构反向
翻译成models里面的模型类。



