Django - 使用通用视图

时间:2012-09-14 02:18:23

标签: python django

我正在尝试将Django通用视图用于CRUD。

我找到了两个资源(12),并且混淆了最好和最简单的方法。

  1. 下面添加到myapp / urls.py
  2. urlpatterns = patterns('',
        url(r'^$',
            ListView.as_view(
                model= Product)),
    )
    

    然后它给出了一个错误,

    Exception Type: TemplateDoesNotExist
    Exception Value:    
    myapp/product_list.html
    

    我创建文件product_list.html时有效。但是,我是否必须手动编写模板?我肯定不会。

    此外,如何装饰它以便只有组的用户才能访问它。

    感谢。

1 个答案:

答案 0 :(得分:2)

装饰器可以在urlpatterns中应用,如下所示:

urlpatterns = patterns('',
    url(r'^$', my_decorator(ListView.as_view(model= Product))),
)

是的,您必须手动编写模板。 此外,模板的名称默认为the_model_name_list.html,但您也可以定义自定义模板名称,如下所示:

urlpatterns = patterns('',
    url(r'^$', my_decorator(ListView.as_view(model= Product,
                                             template_name="custom_name.html"))),
)