Django:我应该使用查询字符串还是干净的URL来映射显示参数?如何?
|
我有以下urlconf:
urlpatterns = patterns(\'page.manager.views\',
url(r\'^$\', \'pages\', name=\'page_manager-pages\'),
url(r\'^add/$\', \'add_page\', name=\'page_manager-add_page\'),
url(r\'^(?P<page_id>\\d+)/\', include(object_patterns)),
)
\'pages \'视图必须返回所有页面的对象列表。通过侧面菜单为用户提供几个显示/搜索选项:
-创建:任意/过去6小时/ 12小时/ 24小时/周
-状态:任何/ status_1 / status_2 / status_3
-持续时间:任意/持续时间_1 /持续时间_2 /持续时间_3
等等
这些选项用于选择应向用户显示哪些值,并可以组合使用,例如:created = any,status = status_1,duration = duration_1
我的问题是,如何最好地在Django中实现这一目标?
到目前为止,我有:
我可以为列表对象的通用视图创建子类,创建一个接受参数(创建的,状态,持续时间等)并提供适当查询集的视图(将选择的(或默认的)排序选项与其他参数一起传递)。
为了传递这些参数,查询字符串似乎是正确的选择,因为我们正在从资源(所有页面的列表)中进行选择。是/否?
我也知道我们从request.GET.get(\'argument_name \')获得此信息。
但是如何为搜索选项创建链接?例如:any,any / status_1 / status_2 / status_3。我们需要知道哪些已经处于活动状态,所以...模板标记?也许更简单的方法?
这是在Django中处理此类事情的正确解决方案,还是有更好的方法?
没有找到相关结果
已邀请:
1 个回复
晤默报