0
私が持っている場合:Django:フォームフィールドとモデルフィールドの間の論理マッピングを達成する方法は?
class MyForm(ModelForm):
class Meta:
model = MyModel
generic_field = CharField()
と
class MyModel(models.Model):
field_x = models.CharField(unique=True, null=True, blank=True)
field_y = models.CharField(unique=True, null=True, blank=True)
field_z = models.CharField(unique=True, null=True, blank=True)
とビューで:
if request.method == 'POST':
my_form = MyForm(
{'field_x': generate_field_x(request.POST['generic_field']), 'field_y': generate_field_y(request.POST['generic_field']),
'field_z': generate_field_z(request.POST['generic_field']),
},
request.POST)
これが正しいモデルフィールド上にgeneric_fieldマーシャリングするために適しています。この問題は、検証エラーがある場合に発生します。モデル検証エラー(field_x/y/z)をgeneric_fieldに元に戻す方法を教えてください。目標は、ユーザーがgeneric_field、validation、およびallとシームレスに対話できるようにすることです。
免責事項:1.私はDjangoを新しくしています。plsは私の投稿の不器用さを許します。 2.私は周りを掘り、レンガの壁を打ちました。おそらく、私はこれを適切にフレーズする方法を知らないからです。助けてください/私を正しい方向に向ける。
応答ありがとうございました、Ignacio。私が達成しようとしているのは、フォーム上に非永続フィールドを持たせることです(generic_field)。その内容はユーザーがフォームをPOSTしたときにモデルフィールド(field_x、field_y、field_z)にプログラムで割り当てます。生成されたフィールドエラーは非永続的な形式になります。 –
最後の行は、 "...任意の生成されたフィールドエラーを非永続フォームフィールドに改造したい" –
しかし、*なぜ*それをしたいですか?あなたが解決しようとしている問題は何ですか?ほぼ確実に良い方法があります。 –