Python 在django中,提交新表单时,如何重定向到提交?
表单正在提交博客文章,并在提交时重定向到索引页 如何更改它,使其重定向到新提交的博客文章 views.pyPython 在django中,提交新表单时,如何重定向到提交?,python,django,forms,Python,Django,Forms,表单正在提交博客文章,并在提交时重定向到索引页 如何更改它,使其重定向到新提交的博客文章 views.py def post(request, post_url): single_post = get_object_or_404(Post, title=post_url.replace('_', ' ')) popular_posts = Post.objects.order_by('-views')[:5] single_post.views+=1 single
def post(request, post_url):
single_post = get_object_or_404(Post, title=post_url.replace('_', ' '))
popular_posts = Post.objects.order_by('-views')[:5]
single_post.views+=1
single_post.save()
t=loader.get_template('blog/post.html')
c = Context({'single_post': single_post, "popular_posts":popular_posts, })
return HttpResponse(t.render(c))
def add_post(request):
context = RequestContext(request)
if request.method =='POST':
form = PostForm(request.POST, request.FILES)
if form.is_valid():
form.save(commit=True)
return redirect(index)
else:
print form.errors
else:
form = PostForm()
return render_to_response('blog/add_post.html', {'form':form}, context)
检查django模型对象的方法
def add_post(request):
context = RequestContext(request)
if request.method =='POST':
form = PostForm(request.POST, request.FILES)
if form.is_valid():
form.save(commit=True)
return redirect(form.instance.get_absolute_url())
else:
print form.errors
else:
form = PostForm()
return render_to_response('blog/add_post.html', {'form':form}, context)
考虑到您有一个博客帖子url,其形式为:
url(r'^blog/(?P<blog_id>[0-9]{4})/$', views.blog_detail, name='blog_detail'),
def add_post(request):
context = RequestContext(request)
if request.method =='POST':
form = PostForm(request.POST, request.FILES)
if form.is_valid():
obj = form.save(commit=True)
return HttpResponseRedirect(reverse('blog_detail', obj.id))
else:
print form.errors
else:
form = PostForm()
return render_to_response('blog/add_post.html', {'form':form}, context)