0
でデータを送信したユーザーを変更することをお勧めします:、ジャンゴフォーム - それは私が私のDjangoプロジェクトに次のコードを持っているきれいな方法
def my_view(request):
form = MyForm(request.POST):
if form.is_valid():
instance = form.save(commit = False)
instance.some_field = 'foo'
form.save()
#...
問題がある、それはこのに次のように書き換えることをお勧めします。
forms.py
class MyForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
# ...
def clean(self):
form.some_field = 'foo'
clean
方法は、データの検証のために排他的に使用する必要がある場合、私は、不思議、または私はまた、このように、ここでいくつかのビジネス・ロジックのものを行うことができ私の見解をより簡潔にし、ビジネスロジックの詳細を欠いています。
clean
メソッドで代入を行う利点の1つは、データの妥当性チェックがsome_field
に依存することがあります。