django 登录、注册
一、登录
1、在blogapp同级目录下新建一个userapp
python manage.py startapp users
目录结构如下:

2、在主项目urls.py中新建users的include url

3、在user app下新建urls.py文件用于创建登录注册的url
4、登录利用django渲染好的模板,url定义如下

5、因为用django定义好的login,所以不需要在views.py中编辑任何东西,直接在user app下新建一个templates文件夹,然后在templates文件夹下新建users文件夹,在users文件夹下新建上面url中写的login.html文件,文件目录如下:

login.html文件如下:

当登录表单校验有错误的时候,提示密码错误,请重试;登录成功之后,页面跳转到blog app下定义的user_list页面去,这个页面是登录状态下显示的信息
二、退出
1、退出用django的logout模块,同样,先定义url

2、定义好之后,这里需要在views.py里面新建logout_view逻辑

退出之后,页面直接返回到blog app下的post_list页面
三、注册
1、第一步还是定义url

2、编辑views.py
这里可以用django的注册表单,也可以自己定义表单

3、定义好逻辑之后,在users/templates/users下面新建register.html

这里注册完成之后在view里面有写自动登录,登录之后跳转到blog app下面的user_list页面,显示属于该用户的帖子
注:
在blog/models.py里面添加如下代码可以使用户和帖子对应

写了之后需要创建数据迁移
然后选择目前帖子属于谁
django 登录、注册的更多相关文章
- django 登录注册注销
一.设计数据模型 1.数据库模型设计 作为一个用户登录和注册项目,需要保存的都是各种用户的相关信息.很显然,我们至少需要一张用户表User,在用户表里需要保存下面的信息: 用户名 密码 邮箱地址 性别 ...
- django登录注册验证之密码包含特殊字符,确认密码一致实现,Form验证
Form验证的原理 首先用户在注册界面提交表单,后台收到表单之后通过request.post取到数据然后传入已经写好的Form类 执行obj.is_valid()这里的obj为Form的实例,在For ...
- [oldboy-django][2深入django]登录注册页面验证码
后台生成随机验证码 #验证码生成 - 在login.html 中有一张验证码图片 设置图片的src url, 相当于发送一次get请求,返回的内容为图片渲染的内容 <div class=&quo ...
- Django+pycharm+mysql 实现用户登录/注册(Django五)
首先是让Django项目与mysql数据库初步建立连接 具体做法见:pycharm连接mysql(注意其中第二步MySQL驱动最好安装最新版的) 这里讲一下我在做这一步遇到的问题.一般Driver 那 ...
- Django项目登录注册系统
Django项目之个人网站 关注公众号"轻松学编程"了解更多. Github地址:https://github.com/liangdongchang/MyWeb.git 感兴趣的可 ...
- Django实现用户登录注册
本文将会介绍小白如何完成一个用户登录注册系统 新建一个Django项目,名字为login_register,并且使用命令manage.py startapp.User(名字自己随便起) 最终djang ...
- AI学习吧-登录注册
登录注册注销 如果需要给表设置权限,没有登录就不可以查看,只需要在每个视图函数之前加上Auth_classes=[ ]即可! 增加两张表,做登录认证 #models.py #做登录验证 class U ...
- Django实现注册页面_头像上传
Django实现注册页面_头像上传 Django实现注册页面_头像上传 1.urls.py 配置路由 from django.conf.urls import url from django.cont ...
- CBV加装饰器解决登录注册问题和 <<中间件>>
文本目录 CBV加装饰器解决登录注册问题 一:什么是中间件 二:中间件有什么用 三:自定义中间件 四:中间件应用场景 五:SCRF TOKEN跨站请求伪造 六: 其他操作 CBV加装饰器解决登录注册问 ...
随机推荐
- sql 日期表示
今年时间 昨天,等于0表示今天 =month(时间对应列名) 上月
- C#输入输出及类型转换,变量,常量。
//输出 Console.WriteLine("大哇塞"); 自动回车的. Console.Write("Hello world"); 不带回车的 注意: 1 ...
- django框架基础-ORM单表操作-长期维护
############### 单表操作-添加数据 ################ import os if __name__ == '__main__': os.environ.set ...
- python代码覆盖率统计-coverage
coverage.py是一个用来统计python程序代码覆盖率的工具.它使用起来非常简单,并且支持最终生成界面友好的html报告.在最新版本中,还提供了分支覆盖的功能. 官方网站: http://ne ...
- Django ORM单表查询必会13条
必知必会13条 操作下面的操作之前,我们实现创建好了数据表,这里主要演示下面的操作,不再细讲创建准备过程 <1> all(): 查询所有结果 <2> filter(**kwar ...
- 使用框架结构之frameset
首先,我希望在你的目录下,有4个网页,各自显示不同的内容. 如图所示: 1.html显示"火影忍者" 2.html显示"英雄联盟" 3.html显示" ...
- springdatajpa 认识以及使用方式
1.spingdatajpa是什么? Spring Data JPA 是 Spring 基于 ORM 框架.JPA 规范的基础上封装的一套JPA应用框架(即上述的:JPA的实现产品),可使开发者用极简 ...
- Servlet与JSP概念理解
Servlet是用Java编写的服务端程序.需要部署到servlet容器上才能运行,tomcat 就是一个servlet容器. 1.Servlet的生命周期 客户端请求该 Servlet --> ...
- 通过samus驱动实现基本数据操作
传统的关系数据库一般由数据库(database).表(table).记录(record)三个层次概念组成,MongoDB是由(database).集合(collection).文档对象(documen ...
- Microsoft Hyperlapse——让第一人称视频更快更流畅
Hyperlapse--让第一人称视频更快更流畅" title="Microsoft Hyperlapse--让第一人称视频更快更流畅"> 职业摄影师Nick Di ...