django forms组件

一、渲染

  1. 导包

    # 导出 forms 包
    from django import forms  
    # 导出 forms 的部件 
    from django.forms import widgets
    
  2. 设置表单字段以及类型

    class UserForm(forms.Form):
      name = forms.CharField(
        max_length=32,
        min_length=4,
        widget=widgets.TextInput(attrs={"class":"xxx"})
      )
      
      age = forms.IntegerField(
        label="显示标签"
      )
    
  3. 前端渲染页面

    {{ form.name }}
    {{form.age}}
    

二、校验

  1. is_valid()表示执行校验

  2. cleaned_data 已经通过校验后的数据

  3. errors 表示没有通过校验的信息

    class UserView(View):
    
        def get(self,request):
            return render(request,'index.html')
    
    
        def post(self,request):
            obj = DemoForm(request.POST)
            if obj.is_valid(): # 校验前端提交过来的数据是否通过校验
                print('success')
            else:
                print('error')
            print(obj.cleaned_data) # 返回校验后的数据,类型为字典
            print(obj.errors) # 没有通过校验的数据
            return HttpResponse('ok')
    
posted @   巫小诗  阅读(105)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示