Django网站建设-用户注册、登陆、邮箱激活、密码找回

Django URL name详解(运用相对路径,修改匹配正则后可减少修改量)

Django URL name详解

将Temlate中所有的修改为相对路径url

<a style="color:white" class="fr registerbtn" href="{% url 'Register' %}">注册</a>
<a style="color:white" class="fr loginbtn" href="{% url 'user_login' %}">登录</a>

将所有的静态文件修改为相对路径staticfile(前提在setting中设置好STATIC_URL 和STATICFILES_DIRS才能找到路径)

以后所有写成相对路径

#模板中添加声明
{% load staticfiles %}

#添加方法,如此以来,即使修改了static的路径也不会修改,因为引用的是相对路径
<link rel="stylesheet" type="text/css" href="{% static 'css/reset.css' %}">
<link rel="stylesheet" type="text/css" href="{% static 'css/animate.css' %}">
<link rel="stylesheet" type="text/css" href="{% static 'css/style.css' %}">

安装Django-simple-captcha,用于生成验证码。

下载连接-github

文档说明

Installation
1、Install django-simple-captcha via pip: pip install django-simple-captcha
2、Add captcha to the INSTALLED_APPS in your settings.py
3、Run python manage.py migrate
4、Add an entry to your urls.py:

urlpatterns += [
    url(r'^captcha/', include('captcha.urls')),
]

添加验证吗

在app.form中建立register_form表单,定义好注册需要的字段(form可自动生成input框)【form实现了后台与前端的交互】

class RegisterForm(forms.Form):
    Email = forms.EmailField(required=True)
    Password = forms.CharField(required=True,min_length=5)
    captcha = CaptchaField()

将form加入RegisterView视图中,并将form数据传入Template中

class RegisterView(View):
    def get(self,request):
        register_form = RegisterForm()
        return render(request,'register.html',{'register_form':register_form})  #将register_form数据传递给Template

通过Template将register_form传入html中,生成验证码(form数据可通过Template自动生成input框)

<div class="form-group marb8 captcha1 ">
    <label>验&nbsp;证&nbsp;码</label>
    {
  { register_form.captcha }}
</div>

完成注册的后台逻辑,get方法用于刷新,post方法用于接受用户信息并进行存储

class RegisterView(View):
    def get(self,request):
        register_form = R
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值