django中form表单组建使用及CBV模式的示例分析
发表于:2025-11-13 作者:千家信息网编辑
千家信息网最后更新 2025年11月13日,这篇文章主要为大家展示了"django中form表单组建使用及CBV模式的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"django中form表单
千家信息网最后更新 2025年11月13日django中form表单组建使用及CBV模式的示例分析
这篇文章主要为大家展示了"django中form表单组建使用及CBV模式的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"django中form表单组建使用及CBV模式的示例分析"这篇文章吧。
一、FBV和CBVFBV:是视图函数以函数的方式写逻辑代码CBV:是视图以类的方式写逻辑代码如CBV: views.pyfrom django.shortcuts import render,HttpResponse,redirectfrom django.views import Viewfrom django.views.decorators.csrf import csrf_exempt,csrf_protectfrom django.utils.decorators import method_decoratorfrom app01 import modelsclass LoginView(View): @method_decorator(csrf_exempt) def dispatch(self, request, *args, **kwargs): return super(LoginView, self).dispatch(request,*args,**kwargs) def get(self, request, *args, **kwargs): return render(request, 'login.html') def post(self,request, *args, **kwargs): user = request.POST.get('user') pwd = request.POST.get('pwd') obj = models.UserInfo.objects.filter(username=user,password=pwd).first() if obj: request.session['user_info'] = {'id': obj.id, 'username': obj.username} return redirect('/users.html') return render(request, 'login.html', {'msg': '去你的'}) 如FBV: views.pydef register(request): if request.method == "GET": form = RegisterForm() return render(request, 'register.html', {'form': form}) else: response = {'status': True, 'data': None, 'msg': None} form = RegisterForm(request.POST) if form.is_valid(): print(form.cleaned_data) else: response['status'] = False response['msg'] = form.errors return HttpResponse(json.dumps(response)) 二、form表单组建使用 导入forms模块from django.forms import Formfrom django.forms import fieldsfrom django.forms import widgets#创建表单类class UserForm(Form): username = fields.CharField( required=True, error_messages={'required': '用户名不能为空'}, widget = widgets.TextInput(attrs={'class': 'form-control'}) ) password = fields.CharField( required=True, error_messages={'required': '邮箱不能为空', 'invalid': '邮箱格式错误'}, widget = widgets.TextInput(attrs={'class': 'form-control'}) ) ut_id = fields.ChoiceField( choices = [], widget = widgets.Select(attrs={'class': 'form-control'}) ) role_id = fields.MultipleChoiceField( choices=[], widget=widgets.SelectMultiple(attrs={'class': 'form-control'}) ) def __init__(self, *args, **kwargs): super(UserForm,self).__init__(*args,**kwargs) self.fields['ut_id'].choices = models.UserType.objects.values_list('id','title') self.fields['role_id'].choices = models.Role.objects.values_list('id','caption')注: username, password,渲染到页面是input标签属性的name值fields.CharField表示输入文本类型,fields.ChoiceField表示单选下拉框fields.MultipleChoiceField表示多选下拉框required=True表示必填选项error_messages={'required': '用户名不能为空'}表示错误提示widget = widgets.TextInput(attrs={'class': 'form-control'})表示增加class属性以上是"django中form表单组建使用及CBV模式的示例分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
表单
模式
示例
分析
内容
篇文章
代码
函数
属性
方式
用户
用户名
视图
逻辑
邮箱
错误
下拉
学习
帮助
文本
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
苏州通信网络技术收费标准
维仁软件开发
康达馨互联网医疗科技有限公司
北京推广软件开发
db2控制中心还原数据库
自定义协议服务器
工行软件开发中心薪水陕西
安全模式进入服务器
新水浒q传服务器
聚分享商城软件开发
校园网络安全知识竞赛
网络安全零报告
网络安全法规的执行日期是
太库科技 环球互联网
数据库技术的概念是什么
剑网三蓬莱服务器
互联网络安全危险和风险
南充三实软件开发公司
有免费的服务器吗
专科网络安全专业好吗
网络技术通信方向
服务器vlan
数据库按照三线表怎么写
为什么服务器老是弹出连接中断
网络安全手抄报排版图
数据库中事务的四类问题
维普数据库子库
软件开发有ui界面兼容性问题
二年级网络安全手抄报的句子
中华dnd数据库