我有一个页面,在该页面中,我向用户显示查询集的结果。我想做的是允许用户点击一个链接来应用过滤器。
目前,我所做的是让链接传递“获取”参数到页面,以便应用过滤器。这些过滤器可以是对其他模型或自定义过滤器的引用(例如,未分配的过滤器)。
为了提供良好的用户体验,实现需要做一些事情。
我认为这必须足够普遍,以至于某些人必须有类似的设计模式或最佳实践,而不是视图和模板中明显的if/else语句。
在那里吗?
发布于 2012-10-05 03:29:02
我发现Django管理员处理这种功能的方式是一个很好的模式。如果您不熟悉,请查看管理员中的list_filter选项。它与您所描述的类似,但您的更通用。也许这能帮你思考一些想法?
?sites__id__exact=1、tags__in=words等。由于您希望允许跨模型查找,因此需要在字符串中提供另一个部分,以包含模型名称,而不是太难。我想钥匙是自动的,让它尽可能的干燥。不要屈服于一堆if语句。安全地将这些查找传递到ORM中也非常容易,而且很容易捕捉到糟糕的查找并向用户提供有意义的错误消息。
我希望这对你的道路有所帮助!)
https://stackoverflow.com/questions/12738052
复制相似问题