ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

用户注册的view写法,forms.ModelForm

2022-05-06 01:32:50  阅读:165  来源: 互联网

标签:__ form 用户注册 label forms 密码 ModelForm


用户注册的view写法,forms.ModelForm

# 在view中引入数据库,并在页面中展示出来的写法  from django import forms  from django.core.validators import RegexValidator
# from django.core.exceptions import ValidationError
class 用户注册对象(forms.ModelForm):
    # 重新对数据库字段格式写校验的规则
    手机号 = forms.CharField(label="手机号",validators=[RegexValidator(r'^(1[3|4|5|6|7|8|9])\d{9}$','手机号输入错误'),])
    密码 = forms.CharField(widget=forms.PasswordInput(),label="密码")    #重新修改数据库的插件为密码
    重复密码 = forms.CharField(widget=forms.PasswordInput(),label="重复密码")
    验证码 =forms.CharField(label="验证码")
    class Meta:
        model = models.用户表
        # fields = '__all__'
        # 如果想让前端按照一定的顺序去展示,则需要把所有的字段按照展示的顺序写出来
        fields = ["用户名", "邮箱", "密码", "重复密码", "手机号", "验证码"]


    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        for name, field in self.fields.items():
            field.widget.attrs = {"class": "form-control", "placeholder": "请输入" + field.label}
            # field.widget.attrs['class'] = "form-control"  仅仅加一个属性的写法  要注意这样写的话,每一个字段都要有lable属性
            #can only concatenate str (not "NoneType") to str  否则会报这个错误  TypeError:只能将str(不是“NoneType”)连接到str

def 用户注册(request):
    form = 用户注册对象()
    return render(request,'user_add.html',{'form':form})

标签:__,form,用户注册,label,forms,密码,ModelForm
来源: https://www.cnblogs.com/tietiejiang/p/16227111.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有