2017-11-13 8 views
1

htmlページの列bhを非表示にしたいので、forms.pyで除外して非表示にし、request.userで外部キー列bhを設定しようとしています。ビューのユーザ名は私にこのエラーを与えています: ">>"を割り当てることはできません: "Bed.bh"は "病院"インスタンスでなければなりません。django形式で列を非表示にして外部キー値を設定する方法

問題を解決する方法はありますか?助けてください!

`#forms.py 

class BedForm(forms.ModelForm): 
class Meta: 
    model=Bed 
    fields = ('bed_id','bed_type','created_date','bh',) 
    exclude=('bh',) 

if request.method == "POST": 
    form = BedForm(request.POST) 
    if form.is_valid(): 
      bed = form.save(commit=False) 
      bed.created_date = timezone.now() 
      hh = Hospital.objects.filter(hospital_id=request.user.username) 
      bed.bh=hh 
      bed.save() 
      b = Bed.objects.filter(bh=request.user.username) 

`

答えて

0

Hospital.objects.filter()Hospitalのインスタンス、QuerySetしない戻すためです。

あなたが何かしたい:

どちらの場合も
hh = Hospital.objects.filter(hospital_id=request.user.username)[0] 

または

hh = Hospital.objects.get(hospital_id=request.user.username) 

を、しかし、あなたは、オブジェクトがそれを取得する前に存在していることを確認するか、例外をキャッチするかがあります、そしてフィギュア次は何をするか。

+0

ありがとうございます。出来た !! –

関連する問題