注册基本逻辑
显示注册页面
1,放入templates模板文件中, 2,修改user,vews.py, 3,修改项目应用user的urls.py 4,在html导入静态资源,
进行注册处理
1,修改提交地址,定义register_handle函数,添加url到user的urls.py中 2,接收数据
#接收数据
username = request.POST.get(’user_name‘)
password = request.POST.get('pwd)
email = request.POST.get('email')
allow = request.POST.get('allow')
#进行数据校验
if not all([username,password,email]):
#数据不完整
retuen render(request, 'register.html',{'errmsg':'数据不完整'})
#校验邮箱
if not re.match(r'^[]0-------正则' , emali)
return render (request,'register.html',{errmsg:'邮箱格式不正确'})
if allow!='on':
return render(request,'register.html',{'errmsg':'请同意协议'})
#进行业务处理;进行用户注册
#使用Django的认证方法
user = User.object.create_user(username,email,password)
user.is_active = 0 #修改激活状态
user.save()
#返回应答,跳转到首页
将首页index.html放到模板文件中templates,在goods写入views视图,函数def index(), 配置goods的urls.py,
使用反向解析
return redirect(reverse('goods':'index'))
查看数据库
select* from df_user \G
显示注册页面和页面处理使用同意个url地址
1,修改hml文件中的提交地址 2,通过请求方式POST,和GET进行判断显示和处理, if request.match==GET: pass else: pass
类视图(建议用这个)
1,类继承View from django.views.generic import View class MyView(View): def get(sel,request): return def post 2,修改应用的urls.py, from myapp,views import MyView urlpatterns = [ url(r'^',MyView.as_view()), ]
生成激活用户的tokon

#发送激活邮件,包含激活链接;/user/active/ #激活链接中需要包含用户的身份信息并且把身份信息进行加密 pip install itsdangerous dump()加密,loads()解密 #加密身份信息,生成激活的tokon
注册用户激活流程
1,在view中添加激活类视图 2,配置urls地址,使用正则捕获参数

进行创建登录视图函数

django内置函数发送激活邮件
django.core.mail 1,进行开启smtp服务 2,在setting进行配置文件

3,在接收数据处理函数中添加 发邮件操作

celery异步发送邮件

1,创建celery_tasks python包,在包里创建Celery实例对象,配置中间人

原发邮件位置改为

如果不是一台电脑需要在文件中增加配置代码

未完待续!
近期有很多朋友通过私信咨询有关Python学习问题。为便于交流,点击蓝色自己加入讨论解答资源基地
该博客围绕Django用户注册展开,介绍了注册基本逻辑,包括显示注册页面、进行注册处理,且显示与处理使用同一URL地址,推荐使用类视图。还阐述了生成激活用户的token、注册用户激活流程,以及使用Django内置函数和Celery异步发送激活邮件的方法。
771

被折叠的 条评论
为什么被折叠?



