Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
django sortting_标签_Django - Fatal编程技术网

django sortting_标签

django sortting_标签,django,Django,我的页面上有排序django sortingtags组件 我希望根据页面的排序字段,以不同的方式呈现页面 我如何实现这一点 例如: {% autosort object_list %} <tr> <th>{% anchor first_name Name %}</th> <th>{% anchor creation_date Creation %}</th> ... </

我的页面上有排序django sortingtags组件

我希望根据页面的排序字段,以不同的方式呈现页面

我如何实现这一点

例如:

{% autosort object_list %}
    <tr>
       <th>{% anchor first_name Name %}</th>
       <th>{% anchor creation_date Creation %}</th>
        ...
    </tr>
它变成:

<tr>
    <th><a href="/path/to/your/view/?sort=first_name" title="Name">Name</a></th>
    <th><a href="/path/to/your/view/?sort=creation_date" title="Name">Creation</a></th>
    ...
</tr>

它根据我点击的链接呈现相同的页面,但如何检查它按哪个字段排序?

使用Jinja2模板引擎,您可以拥有:

{% for tag in tags.order_by(sort_method) %}
    <a href="{{tag.get_absolute_url()}}">{{tag.name}}</a>
{% endfor %}
我不确定django模板是否允许在{%for%}子句中使用过滤器,但您可以尝试创建一个过滤器,将order_by子句添加到标记中。
否则,在标记对象上迭代的自定义模板标记可能是一个解决方案。我不再使用django模板引擎了。

我明白了。由于链接看起来像/path/to/your/view/?sort=first\u name,所以您只需要在视图函数中使get-from-request:sorted\u-by=request.get.get'sort'然后将其发送到模板。就这样