2017-03-16 5 views
0

を期待どおりに動作しない場合は、私は、チュートリアルを以下していると私は私の入力のための編集ボタンを作成したいが、私は編集ボタンをクリックしたときには、フォームが、空を返します。ジャンゴフォーム -

フォームを。 PY

class RecordingForm(forms.ModelForm): 
    class Meta: 
     model = Recording 
     fields = ['component', 'group', 'failure', 'degree_of_failure'] 

views.py

def edit_recording(request,slug, recording_id): 
    recording = get_object_or_404(Recording, pk=recording_id) 
    if request.method == "POST": 
     form = RecordingForm(request.POST, instance=recording) 
     if form.is_valid(): 
      recording = form.save(commit=False) 
      recording.save() 
      return redirect('data:detail') 
    else: 
     form = RecordingForm(instance=recording) 
    template = 'data/create_recording.html' 
    context = {'form': form} 
    return render(request, template, context) 

the form is empty :(

+2

テンプレートを表示してください。 – Alasdair

+0

ブレークポイントを適用して記録オブジェクトに値が含まれていることを確認してください。 –

+1

参照する「編集ボタン」を含むテンプレート/ビューも表示します。そのスクリーンショットは検証エラーを表示していますが、これはGETで取り上げるべきではありません。これはおそらく、最初のフォームを表示するためにこのビューにPOSTを送信していることを意味します。 –

答えて

0

答えは次のとおりです。

  • を取得し、私はこれらの2

    植物= get_object_or_404(工場、スラッグ=スラッグNoReverseMatchを固定するために変更さについて

    1. ダニエルローズマンが正しいですか)

      リターンリダイレクト( 'data:detail'、slug = plant.slug)