Django Generic编辑视图以接受实例

时间:2012-11-05 03:22:07

标签: python django

鉴于我有一个引用产品模型的版本模型,如何在给定此URL的表单中创建使用Product模型实例的通用创建或更新视图:

url(r'^product/(?P<pk>\d+)/create_version', ProductVersionCreateView.as_view(), name='workspace_product_create_version'),

1 个答案:

答案 0 :(得分:0)

使用django的通用视图。

urls.py

from django.views.generic import UpdateView, CreateView
#strongly recommend creating a views.py and putting this logic in there.     
class ProductVersionCreateView(CreateView):
    model  = ProductVersion
    def get_initial(self):
        return {"key": value} #dictionary for initial.
class ProductVersionUpdateView(UpdateView):
    model = ProductVersion

urlpatterns += url(r'^product/create_version', ProductVersionCreateView.as_view(), name='workspace_product_create_version'), #no primary key needed
urlpatterns += url(r'^product/(?P<pk>\d+)/update_version', ProductVersionEditView.as_view(), name='workspace_product_create_version'),

这方面的文档是一周,但无论如何我都会阅读它们。 https://docs.djangoproject.com/en/1.3/topics/class-based-views/