django实战项目 内容管理系统cms (六)视图层views.py2/4

谷雨:榖雨之日桐始华,又五日田鼠化为鴽,又五日虹始见。

2806

 

我们回到veiws.py这个文件,接着写其他的处理函数

1. 配置urls

修改cms/focus/urls.py这个文件:

涉及到数字的正则匹配和命名组的知识,请自行查阅文档。

2. 添加各种表单

修改cms/focus/forms.py这个文件:

这个就不介绍了,之前有讲过,不熟的查文档。

3. 登入和登出:

在cms/focus/views.py这个文件中添加以下代码:

登录这个处理函数有两种可能,一是用户点击进入了登录页面login.html,请求方式是get,另外是ta在其它页面或者登录页面点击了‘登录’这个按钮,请求方式是post,所以需要先判断。

我们之前开始写views.py的时候,有导入三个django验证系统内置的方法

相关知识查阅 django 文档

注意:我们定义登入,登出函数的时候不要命名为login,logout 这样会和引入的相关方法重名,会发生错误,平常命名也要注意是否该名字已被占用。另外,命名时也要尽量表示出这个函数/变量/类的作用和意图,让人一看就知道它是干什么的

@login_required这个装饰器是django内置的,它的作用是使所装饰的函数必须是登录的用户才继续运行,不然进入指定的login_url, 参见 django 文档 , 我们这里没有指定login_url,所以在settings.py中添加以下代码:

next表示登录后自动进入的页面。

1 条评论

  • 刘世杰 2017年5月26日 回复

    这个过程运行出现了报错:
    AttributeError at /
    ‘module’ object has no attribute ‘register’
    查了下 是不是名字定义和库文件重复了啊?卡住了 求助大神

发表评论

电子邮件地址不会被公开。 必填项已用*标注