1つのFormFieldから複数のModelField値を抽出する必要があります。どこでこれを行うべきですか? clean_<field>
の機能ですか? cleaned_data
突然変異で?フォーム__init__
は機能しますか? model.save
またはform.save
で機能しますか?複数のmodelFieldを1つのFormfieldから計算する
モデル:
def normalize_name(name):
# some code
return name
class MyModel(models.Model):
name = models.CharField(max_length=250)
normalize_name = models.CharField(max_length=250, unique=True)
形式:
class MyForm(forms.ModelForm):
class Meta:
model = MyModel
fields = ('name',) # or normalize_name? or both?
"1つのFormFieldから複数のModelField値を抽出する"とはどういう意味ですか?しかし、フォームに "normalize_name"が必要な場合は、フィールドタプルにも追加する必要があります....( 'name'、 'normalize_name'、...)... –
ユーザーはhtml形式で 'name'と入力してください。モデルでは 'name'と' normalized_name'の両方が検証を必要とします。 'normalized_name'は' name'から計算して検証する必要があります。 – seyed