我想要显示相同的数据给用户,因为他张贴后,保存在数据库中使用表格。我不明白它的逻辑。
我正在尝试这样做:
def CreateDeal(request):
if request.method == "POST":
form = DealForm(request.POST)
if form.is_valid():
form.save(commit = True)
data = form.data
return render(request, '/path_to/deal_detail.html',data=data)
这样可以吗?有没有更好的方法呢?
发布于 2014-06-19 21:51:35
如果你这样做,"detail“页面的重定向将重新提交表单。这通常不是我们想要的行为。
更好的方法是为您保存的对象创建一个详细视图(如果您尚未创建),然后将用户重定向到该特定对象的详细视图:
from django.http import HttpResponseRedirect
from django.core.urlresolvers import reverse
def CreateDeal(request):
if request.method == "POST":
form = DealForm(request.POST)
if form.is_valid():
obj = form.save(commit=True)
return HttpResponseRedirect(reverse('deal-detail-view', args=(obj.id,)))
# or return HttpResponseRedirect(obj.get_absolute_url())
# if `get_absolute_url` is defined
https://stackoverflow.com/questions/24307986
复制相似问题