0

我需要获取我刚刚保留的对象的 id,以便在 HttpResponseRedirect 中传递它:

def pujar_track(request):
if request.method=='POST':
    formulari = TrackForm(request.POST, request.FILES)
    if formulari.is_valid():                    
        formulari.save()            
        # code to get the track_id ???          
        return HttpResponseRedirect('/track/pujar/acoplar',track_id)
else:
    formulari = TrackForm()

return render(request,'principal/trackForm.html',
    {'formulari':formulari})

提前致谢!

4

1 回答 1

0

假设 TrackForm 扩展 ModelForm:

formulari = formulari.save()
return HttpResponseRedirect('/track/pujar/acoplar',formulari.id)

在不知道您如何接受变量的情况下,我无法告诉您如何最好地传递参数。但是,我鼓励您使用reverseURL 而不是硬编码,如下所示:

return HttpResponseRedirect(reverse('view_name', args=(),
    kwargs={'track_id': formulai.id}))

假设您的视图接受关键字参数track_id

于 2013-02-25T19:55:37.440 回答