Day 02 Django登录功能介绍

Day 02 Django登录功能介绍

1、登录功能,链接MySQL

路由urls

urlpatterns = [
	url(r'admin/', admin.site.urls),
	url(r'index/',  views.index),
	url(r'signup/', views.signup),
	url(r'signin/', views.signin)
]

视图函数views

def signup(request):
	if requests.method == 'GET':
		return redirect('/index')  # 必须是已经存在在路由中的函数
	else:
		name = request.POST.get('name')
		password = request.POST.get('password')

2 MTV和MVC

1 django是MTV架构,本质也是MVC
	-M:model,数据库相关操作
	-T:template,模版文件(就是MVC中的V)
	-V:view,视图(路由+V=MVC中的C)
2 MVC架构:主流的web框架都是MVC
	-web应用分为模型(M),视图(V)和控制器(C)
	-M:model,数据库相关操作
	-C:controler 控制器,逻辑相关,逻辑代码
	-V:view 视图
3 详情:
https://www.cnblogs.com/liuqingzheng/p/13725794.html
1234567891011

3 Django请求生命周期

0 近几年python中的几个web框架,sanic,fastapi(异步框架)

1 python中的web服务器都符合wsgi协议

2 web服务器,任何语言都会有一个web服务器,负责把http请求转成这门语言的变量
	-python:wsgiref(性能很低),uwsgi(c语言写的,200多并发量)
	-java:tomcat,jboss(300多并发量)
	-php:php服务器
	
3 请求生命周期图解:
12345678910

image-20200924175613811

4 虚拟环境讲解,pycharm配置

1 虚拟环境作业:隔离环境,每个项目有自己依赖的模块和包,不同模块和包的版本	就不会相互影响
2 a路径、b基于哪个解释器、c是否继承基础解释器的模块、d是否可以被其他项目	 使用
12

5 orm概述

1 orm:对象关系映射(跟语言无关)
	数据库中的表-------->对应程序的一个类
	数据库中的一行数据--->对应程序中的一个对象

2 python中常见orm框架
	-django的orm框架
	-sqlachemy orm框架
	
3 java,java中写web的项目:
	-ssh框架:spring+structs(有漏洞)+hibernate(orm框架)
	-ssm框架:spring+springMVC+mybatis(orm框架,可以写原生sql)
	
	-sb框架:springboot,内置tomcat(现在主流)
	-springcloud:微服务(现在主流)
	
4 orm能干的事
	-创建表(不能创建数据库,手动创建数据库)
	-增加删除表内字段
	-增删查改数据
12345678910111213141516171819

7django中orm的使用

0 sqlite:也是个数据库,文件数据库,一个库就是一个文件,不需要单独安装
  -现在就在用,也要用到关系数据库,不需要连数据库,
  -移动开发本地存储数据,存在sqlite中

1 创建个UserInfo表,在model中写一个类
2 表中有字段(类属性),字段有属性,

第一步在models中要写类:
  class UserInfo(models.Model):
	# 字段属性-->后面那个对象决定的
	# id字段自增,并且是主键
	id = models.AutoField(primary_key=True)
	# 名字字段是varchar类型,长度为32(唯一约束,是否是索引,默认值是,是否可为空)
	name = models.CharField(max_length=32)
	# 密码字段
	password = models.CharField(max_length=64)
第二步,把表创建出来(执行两个命令):
  python manage.py makemigrations
  python manage.py migrate
	

123456789101112131415161718192021

8 用户注册,展示案例

1 在models.py中写一个UserInfo类, 一定要继承models.Models, 然后用命令创建表.
2 tempates下创建register.html, 提交的form表单里面要有UserInfo中需要的字段.
3 在urls.py中添加路由: url(^register,“views.register”), url(^userlist,“views.user_list”)
4 在views.py中写register函数,用页面中得到的数据实例化一个user对象,返回 redirect(’/userlist’),跳转到查看用户列表页面
写user_list函数,用models.UserInfo.object.all()查询出所有用户数据,并替模版文件中内容, 返回render(request,‘userlist.html’, context={‘userlist’: userlist})
5 tempates下创建userlist.html, 遍历userlist中的数据并显示.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值