ミニブログへのユーザーの投稿に基づいて、ミニ返信システムを構築しようとしています。すべての投稿には、replyという名前のリンクがあります。返信を押すと、返信フォームが表示され、返信を編集してフォームを送信します。問題は、返信したい投稿のIDを取得する方法がわからないことです。ビューでは、パラメーターとして1つの番号(ブログ投稿のIDとして)を使用すると、データベースへの応答が挿入されます。しかし、ハードコーディングしないことでどうすればそれを行うことができますか?
ビューは次のとおりです。
def save_reply(request):
if request.method == 'POST':
form = ReplyForm(request.POST)
if form.is_valid():
new_obj = form.save(commit=False)
new_obj.creator = request.user
new_post = New(1) #it works only hardcoded
new_obj.reply_to = new_post
new_obj.save()
return HttpResponseRedirect('.')
else:
form = ReplyForm()
return render_to_response('replies/replies.html', {
'form': form,
},
context_instance=RequestContext(request))
私はforms.pyにあります:
class ReplyForm(ModelForm):
class Meta:
model = Reply
fields = ['reply']
およびモデルの場合:
class Reply(models.Model):
reply_to = models.ForeignKey(New)
creator = models.ForeignKey(User)
reply = models.CharField(max_length=140,blank=False)
objects = NewManager()
Newはマイクロブログクラスであると述べています
thanks