0
私はModelFormのフィールドを除外しましたが、フォームの表示.as_p
には影響していないようです。私は何もせずにインスタンス化すると、それを表示することさえできます!ここでDjangoモデルフォームは動作しません
はのModelFormです:
class WorkoutForm(ModelForm):
class Meta:
model = Workout
exclude = ('user',)
と関連するビュー:
def addworkout(request, uid):
thisuser = get_object_or_404(User, pk=uid)
if request.method == 'POST':
form = WorkoutForm(request.POST)
if form.is_valid():
form.save()
return HttpResponseRedirect('/u/'+str(uid))
else:
w = Workout(user=thisuser)
#creates a form for thisuser
form = WorkoutForm(instance = w)
return render_to_response('addworkout.html', {'form':form, 'user':thisuser}, RequestContext(request))
と、テンプレート:
<body>
<p>"{{request.path}}" </p>
Add a new workout, {{user.name}}!
<form action="/u/1/addworkout" method="POST">{% csrf_token %}
{{ form.as_p }}
<input type="submit" value= "Submit" />
</form>
</body>
は、あなたのモデルを表示することができます:あなたの
POST
要求ブロックで、あなたも、あなたのビューは次のようになります
form = WorkoutForm(request.POST, instance=w)
が再書かれたような場合に合格する必要がありますか? – DrTyrsa