私はReservation
オブジェクトを作成するフォームを持っています。このオブジェクトには、customer = models.ForeignKey(User)
があります。これは必須の属性です。現在のユーザーをModelFormの属性に設定するにはどうすればよいですか?
ReservationCreationForm().save()
を使用してオブジェクトを作成するにはどうすればよいですか?
:
def save(self,user,*args,**kwargs):
self.customer = user
super(ReservationCreationForm).save()
ので、私はrequest.user
属性を持つフォームを作成することもできますが、それが動作しませ - 例外値:
'super' object has no attribute 'save'
あなたは何をしますか?
EDIT
はトドルの回答によると、私がsave()自身で問題を解決し
def save(self,user,*args,**kwargs):
self.customer = user
super(ReservationCreationForm, self).save(*args, **kwargs)
に保存変更しましたが、それはまだそれをReservation
にuser
を追加しません。発生する例外値:
va_app_reservation.customer_id may not be NULL
おかげでそれはまだ予約にユーザーを追加しませんが···顧客がモデルで定義されている、私はしませんでしたsave()メソッドを除くModelFormのどこにでも定義できます。 –
@MilanoSlesarik私は私の答えを更新しました、今試してみてください。 – Todor
Todorありがとう! –