ModelForm的使用
from django.forms import Form,ModelForm,fields,widgets as wd
class QueModelForm(ModelForm):
class Meta:
model=models.Question #
fields=['caption','tp']
error_messages = {
'caption':{'required':'名称不等为空','invalid':'格式错误'},
'tp':{'required':'名称不等为空','invalid':'格式错误'}
}
widgets = {
'caption':wd.TextInput(attrs={'class':'form-control',}),
# 'tp':wd.TextInput(attrs={'class':'form-control'})
} class UserTypeModeForm(ModelForm):
title = fields.CharField(max_length=,required=True,widget=wd.Textarea()) class Meta:
model = models.UserType
fields = "__all__" error_messages = {
'title':{'required':'名称不能为空','invalid':'格式错误'}
}
widgets = {
'title':wd.TextInput(attrs={'class':'c1'})
} def edit_que(request,que_id):
# if request.is_ajax():
# print()
# models.Question.objects.create(questionnaire_id=que_id,)
# que_list=models.Question.objects.filter(questionnaire_id=que_id)
# return render(request,'edit_que.html',{'que_list':que_list,'que_id':que_id}) def inner():
que_list=models.Question.objects.filter(questionnaire_id=que_id)
if not que_list:
form=QueModelForm()
yield {'form':form,'obj':None}
else:
for que in que_list:
form=QueModelForm(instance=que)
Opform=OptionModelForm()
temp={'form':form,'Opform':Opform,'obj':que,'option_class':'hide','options':None}
if que.tp == :
temp['option_class']=''
def inner_loop(quee):
option_list=models.Option.objects.filter(qs_id=quee)
for v in option_list:
yield {'form':OptionModelForm(instance=v),'obj':v}
temp['options']=inner_loop(que)
print('temp',form)
yield temp
return render(request,'edit_que.html',{'form_list':inner()})
#############################################
#HTML部分 <ol> {% for item in form_list %} <p></p>
<button type="button" class="close X_btn" data-dismiss="modal" aria-label="Close" X_id="{{ item.obj.id }}"><span aria-hidden="true">×</span></button> <li>
<div> <p>问题名称:{{ item.form.caption }}</p>
<p>问题类型:{{ item.form.tp }} <a href="#" class=""data-toggle="modal" data-target="#myModal">添加选项</a></p>
<ul>{% for v in item.options %}
<li id="li_{{ v.obj.id }}">{{ v.form }}</li>
{% endfor %}
</ul>
</div>
</li>
{% endfor %} </ol>
ModelForm的使用的更多相关文章
- 【Django】--ModelForm组件
ModelForm a.class Meta: model,#对应Model的 fields=None,#字段 exclude=None,#排除字段 labels=None,#提示信息 help_te ...
- Django Form and Modelform Admin定义 高级查询)
Django的form表单一般具有两种功能 1. 验证输入 2.输入HTML ---------模板----------- from django import forms class BookFor ...
- Django ModelForm and Form
django表单系统中,所有的表单类都作为django.forms.Form的子类创建,包括ModelForm 关于django的表单系统,主要分两种 基于django.forms.Form 基于dj ...
- Django: ModelForm中Meta的fields等成员介绍
class MyForm(forms.ModelForm): realname = forms.CharField() phone = forms.CharField() class Meta: mo ...
- Django中ModelForm应用
Django中ModelForm的应用 在传统中Form提交的POST的数据在服务器端获取时将不得不一一获取并验证数据的可靠性,但是使用django提供的Form时可简化该过程并提供相应的验证,同时D ...
- Django中使用ModelForm实现Admin功能
接上一篇<Django中使用Bootstrap> ModelForm 可以将数据库中的信息展示在一个表中,因此我们在查询数据库信息时可以使用ModelForm在前端展示查询到的信息. 在上 ...
- django Modelform
前言: 为什么要用form去验证呢? 我们提交的是form表单,在看前端源码时如果检查到POST URL及我们提交的字段,如果没有验证我们是否可以直接POST数据到URL,后台并没有进行校验,直接处理 ...
- ModelForm
这是一个神奇的组件,通过名字我们可以看出来,这个组件的功能就是把model和form组合起来,对,你没猜错,相信自己的英语水平. 先来一个简单的例子来看一下这个东西怎么用: 比如我们的数据库中有这样一 ...
- Django的ModelForm组件
创建类 from django.forms import ModelForm from django.forms import widgets as wd from app01 import mode ...
- Django ModelForm修改默认的控件属性
Django 中利用ModelForm 可以快速地利用数据库对应的Model 子类来自动创建对应表单. 例如: from django.db import models from django.for ...
随机推荐
- 扫AR
- freeRTOS中文实用教程3--中断管理之延迟中断处理
1.前言 嵌入式实时操作系统需要对整个系统环境产生的事件作出响应.可以采用中断方式也可以采用轮询方式来进行处理.如果采用中断方式,则希望ISR(中断服务例程)的处理时间越短越好. 注:必须说明的是,只 ...
- camera驱动框架分析(上)【转】
转自:https://www.cnblogs.com/rongpmcu/p/7662738.html 前言 camera驱动框架涉及到的知识点比较多,特别是camera本身的接口就有很多,有些是直接连 ...
- WPF当中StaticResource调用方法
1.先在Converter命名空间当中,定义转换功能类: public sealed class BoolToValueConverter : System.Windows.Data.IValueCo ...
- React-Native 之 网络请求 fetch
前言 学习本系列内容需要具备一定 HTML 开发基础,没有基础的朋友可以先转至 HTML快速入门(一) 学习 本人接触 React Native 时间并不是特别长,所以对其中的内容和性质了解可能会有所 ...
- 使用RMS API 自定义Office(Word、Excel、PPT)加密策略
什么是RMS: Microsoft Windows Rights Management 服务 (RMS),是一种与应用程序协作来保护数字内容(不论其何去何从)的安全技术,专为那些需要保护敏感的 Web ...
- ie6 表格td中无内容时不显示边框的解决办法
1.在单元格中加入一个空格.这样: <td> </td> 2.直接在table里这样写:<table border="0" cellspacing=& ...
- python+selenium七:下拉框、选项框、select用法
# from selenium import webdriverfrom selenium.webdriver.common.action_chains import ActionChainsimpo ...
- linux命令: chown命令
chown将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID:组可以是组名或者组ID:文件是以空格分开的要改变权限的文件列表,支持通配符.系统管理员经常使用chown命令,在将文件拷贝 ...
- 步步为营-10-string的简单操作
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Tex ...