【记录】【django视图】

https://download.csdn.net/download/qq_42536276/12749315

1、写个登录功能,修改之前的index.html

 

2、客户端通过http协议想服务器发送请求,最常用的是get和post

2.1 GET请求

在form表单增加属性method=“get”,输入账号登录后,账号信息就在url中显示

2.2 POST请求

同样上面代码,修改method为post,提交账号信息了点击登录后出现页面报错,“跨站请求伪造”,这里要用到Django的模板,使用“模板标签”添加CSRF令牌。在form表单中添加     {% csrf_token %}

 

注:

如果想忽略掉该检查项,可以在项目的setting.py中注释掉

3、处理登录请求

3.1可以通过form表单的action属性来指定提交的路径

修改index.html中from的属性

<form method="post" action="/login_action/">

按之前的工作了新增login_action的实现(在urls.py中增加路径,veiws.py中增加函数)

 

4、登录成功页

4.1之前只是简单的返回了登录成功的字符串,现在实现一个页面,在templates下新增event_manage.html文件

4.2在urls.py中新增urlpath('event_manage/',views.event_manage),

eviews.py中新增event_manage函数并修改登录成功的放回

上面用到了HttpResponseRedirect 重定向函数,返回到这个url,再读取urls.py再调用到views.py的具体函数,并返回

5、cookie的使用

继续修改sign/views.py文件

 

 

6、session的使用

6.1和cookie一样的修改views.py文件

6.2上述的session信息没有存储的地方,所以要创建django_session表

python manage.py migrate  

通过migrate进行数据迁移,在尝试使用session登录界面正常了

7、认证系统

python manage.py createsuperuser

创建用户admin  admin123456   

7.1引用Django认证登录

使用authenticate()函数认证给出的用户名和密码。认证通过返回一个user对象,否则为None,然后使用login()函数接收HttpRequset对象和一个user对象进行登录。

7.2在发布会函数前加上锁,要求必须登录才能访问

from django.contrib.auth.decorators import login_required

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值