私はdjangoでいくつかのフォームを作成しようとしています。IntegrityError:NOT NULL制約がOneToOneFieldsで失敗しました
私はいくつかのモデル製:
class Identity(models.Model):
[...]
class Move(models.Model):
identity = models.OneToOneField(Identity, blank=True)
[...]
とビュー:
def firstform(request):
forms = {}
if request.method == "POST":
forms["move_form"] = MoveForm(request.POST)
forms["identity_form"] = IdentityForm(request.POST)
if all((forms["move_form"].is_valid(),
forms["identity_form"].is_valid())):
forms["identity_form"].save()
forms["move_form"].identity = forms["identity_form"]
forms["move_form"].save()
return HttpResponse("OK")
else:
forms["move_form"] = MoveForm()
forms["identity_form"] = IdentityForm()
return (render(request, "main/devis.html", forms))
をしかし、私はdjango.db.utils.IntegrityError: NOT NULL constraint failed: main_move.identity_id
を取得し、私のフォームを送信しようとします。
どうすればこの問題を解決できますか?
あなたのコードのどこにでも 'main_move'が表示されません。このエラーを引き起こす更新されたコードを投稿することはできますか? – gorus
@gorus mainはアプリケーションの名前で、クラスの名前を移動し、estimate_queryはフィールドの名前です:私は2つのフィールドを間違えました!問題はアイデンティティ分野ではありませんでした。 **編集**気にしないでください、私はestimate_queryに関する問題を修正しました。 (私は投稿を編集しました) – vmonteco