如何根据url请求更改Django列表视图中的模板名称?

2024-10-01 13:25:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个模板来呈现一个listview,我根据用户给出的请求url选择模板。我知道,我可以添加2个类2模板分别在2个单独的网址。例如

class MyListView1(generic.ListView):
     template_name = 'myapp/list_one.html'
     .....
     .....

class MyListView2(generic.ListView):
     template_name = 'myapp/list_two.html'
     .....
     .....

但是,有没有一种方法可以检查一个类中的url请求,并根据它在一个listview类中呈现模板?有点像

^{pr2}$

我知道这不是一个有效的代码,但只是为了形象化


Tags: 用户name模板urlhtmltemplatemyappgeneric
1条回答
网友
1楼 · 发布于 2024-10-01 13:25:56

无论何时您想在泛型视图中执行动态操作,它都必须在方法中。This page显示了可用于ListViews的方法,您可以看到它包含了^{},它应该完全符合您的需要。在

另一种选择是有两个独立的视图类,每个视图类定义自己的模板名,它们继承自定义其余共享功能的公共基类。在

相关问题 更多 >