从使用Django通用视图创建的新对象中检索键
我的代码如下所示:从使用Django通用视图创建的新对象中检索键,django,google-app-engine,views,generics,Django,Google App Engine,Views,Generics,我的代码如下所示: def add_cart(request): return create_object(request, form_class=CartForm, post_save_redirect=reverse('test.views.show_cart', kwargs=dict(object_id='%(key)s'))) 理想情况下,我希望它看起来像这样: def add_cart(request):
def add_cart(request):
return create_object(request, form_class=CartForm,
post_save_redirect=reverse('test.views.show_cart',
kwargs=dict(object_id='%(key)s')))
理想情况下,我希望它看起来像这样:
def add_cart(request):
newobject = create_object(request, form_class=CartForm,
post_save_redirect=reverse('test.views.show_cart',
kwargs=dict(object_id='%(key)s')))
request.session['cartid'] = newobject.key
return newobject
如何从新创建的对象中检索密钥
我正在使用所有最新版本的谷歌应用程序引擎补丁。在Django下,您可以使用
newobject.id
或
我建议使用.pk
请记住,newobject.pk并不总是与newobject.id相同。当前的通用视图(包括create_object)不提供钩子来对创建的对象进行额外处理。所以,如果你想这样做,你必须滚动你自己的创建视图,这真的不是很难 当Django 1.2推出时,我们应该得到基于类的泛型视图,这将使它更容易钩住额外的功能
newobject.pk