gpt4 book ai didi

python - 使用空字段和空白字段创建 Django 表单

转载 作者:太空宇宙 更新时间:2023-11-04 04:54:21 25 4
gpt4 key购买 nike

我正在尝试创建一个表单,其中两个字段都是可选的,但是,在设置 nullblank 时我总是收到错误消息。我做错了什么?

错误

super(CharField, self).__init__(*args, **kwargs)
TypeError: __init__() got an unexpected keyword argument 'blank'

表单.py

class EditProfile(forms.Form):
"""
A form that lets a user change their profile information
"""
first_name = forms.CharField(
label=("Fornavn"),
strip=False,
blank=True,
null=True
)
last_name = forms.CharField(
label=("Efternavn"),
strip=False,
blank=True,
null=True,
)
def __init__(self, user, *args, **kwargs):
self.user = user
super().__init__(*args, **kwargs)

def save(self, commit=True):
first_name = self.cleaned_data["first_name"]
last_name = self.cleaned_data["last_name"]
self.user.first_name = first_name
self.user.last_name = last_name
if commit:
self.user.save()
return self.user

最佳答案

正如@danielcorreia 所说,您不在表单中使用blank,而是使用required = False

class EditProfile(forms.Form):
"""
A form that lets a user change their profile information
"""
first_name = forms.CharField(
label=("Fornavn"),
strip=False,
required=False
)
last_name = forms.CharField(
label=("Efternavn"),
strip=False,
required=False
)
def __init__(self, user, *args, **kwargs):
self.user = user
super().__init__(*args, **kwargs)

def save(self, commit=True):
first_name = self.cleaned_data["first_name"]
last_name = self.cleaned_data["last_name"]
self.user.first_name = first_name
self.user.last_name = last_name
if commit:
self.user.save()
return self.user

关于python - 使用空字段和空白字段创建 Django 表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47422491/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com