我和Django一直有这个奇怪的问题。在我创建模型的网站中,它重定向到我列出模型的页面,新模型还没有收听。然后,当我刷新页面时,模型就在那里。如何在重定向之前确保数据库调用已完成?感觉不同步和马车。在删除模型时也会发生这种情况。感谢帮助。
P.S我的应用程序托管在Google App Engine上,我正在使用Django-non-rel。
以下是创建对象的一些代码:
def new_object(request, template_name, parent=None):
form = ObjectForm(request.POST or None, user=request.user)
if form.is_valid():
model = form.save()
model.owner = request.user
model.parent = parent
model.save()
if parent:
return HttpResponseRedirect(parent.get_absolute_url())
else:
return HttpResponseRedirect('/')
data = { 'form' : form, 'parent': parent }
context = RequestContext(request)
return render_to_response(template_name, data, context)
保存对象的功能
def save(self, *args, **kwargs):
''' On save, update timestamps '''
if not self.id:
self.created_date = datetime.datetime.today()
self.modified_date = datetime.datetime.today()
if self.parent:
self.parent.modified_date = self.modified_date
self.parent.save()