您的位置:首页 > 编程语言 > Python开发

python第二十四天学习记录

2017-02-17 07:42 295 查看

django ModelForm

django表单系统中,所有的表单类都作为django.forms.Form的子类创建,包括ModelForm

关于django的表单系统,主要分两种

* 基于django.forms.Form

* 基于django.forms.ModelForm

#ModelForm 的创建
class UserInfoModelForm(forms.ModelForm):

is_rmb = Ffields.CharField(widget=Fwidgets.CheckboxInput())

class Meta:
model = models.UserInfo
fields = '__all__'
# fields =  ['username','email']
# exclude = ['username']
labels = {
'username': '用户名',
'email': '邮箱',
}
help_texts = {
'username': '...'
}
widgets = {
'username': Fwidgets.Textarea(attrs={'class': 'c1'})
}
error_messages = {
'__all__':{

},
'email': {
'required': '邮箱不能为空',
'invalid': '邮箱格式错误..',
}
}
field_classes = {
# 'email': Ffields.URLField
}

# localized_fields=('ctime',)

def clean_username(self):
old = self.cleaned_data['username']
return old


def index(request):
if request.method == "GET":
obj = UserInfoModelForm()
return render(request,'index.html',{'obj': obj})
elif request.method == "POST":
obj = UserInfoModelForm(request.POST)
if obj.is_valid():
# obj.save()
instance = obj.save(False)
instance.save()
obj.save_m2m()

# print(obj.is_valid())
# print(obj.cleaned_data)
# print(obj.errors.as_json())
return render(request,'index.html',{'obj': obj})
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: