django模板中用于排序对象的助手应用程序。

django-sorter的Python项目详细描述


django-sorter有助于对django模板中的对象进行排序 修改视图,可以在同一页上多次使用,或者 模板,提供帮助程序以轻松生成要切换的链接和表单 排序标准(包括排序顺序)并且具有~100%的测试覆盖率。

快速启动

  1. 使用您喜爱的python打包工具获取应用程序,例如:

    pip install django-sorter
    
  2. INSTALLED_APPS设置中列出此应用程序。 您的设置文件可能类似于:

    INSTALLED_APPS = (
        # ...
        'sorter',
    )
    
  3. 如果尚未添加到您的设置中,请添加request模板 设置TEMPLATE_CONTEXT_PROCESSORS的上下文处理器 (您可能需要add it):

    TEMPLATE_CONTEXT_PROCESSORS = (
        # ...
        'django.core.context_processors.request',
    )
    
  4. 指定允许的排序条件,至少为默认值 'sort'排序查询字符串参数:

    SORTER_ALLOWED_CRITERIA = {
        'sort': ['first_name', 'creation_date', 'title'],
    }
    
  5. 在模板顶部添加此行以加载排序标记:

    {% load sorter_tags %}
    
  6. 决定要排序的变量,并使用 在遍历变量之前对其进行排序。

    {% sort objects as sorted_objects %}
    
  7. 也可以显示不同的排序链接或表格:

    <tr>
       <th>{% sortlink by "first_name" %}By first name{% endsortlink %}</th>
       <th>{% sortlink by "creation_date,-title" %}By creation date and title{% endsortlink %}</th>
        ...
    </tr>
    

    模板标记采用逗号分隔的排序语句列表。 它也是一个块标记,允许您设置生成的 链接。前面的片段将呈现如下:

    <tr>
        <th><a href="/?sort=first_name" title="Sort by 'first_name' (asc)">By name</a></th>
        <th><a href="/?sort=creation_date,-title" title="Sort by 'creation_date' (asc) and 'title' (desc)">By creation and title</a></th>
        ...
    </tr>
    

    类似地,{% sortform %}template标记呈现一个表单,而不是 一个简单的链接。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java扫描器没有这样的元素例外   多线程文件写入中的java行为   resteasy Java变量值在响应请求后保留在内存中   检查有效的用户输入字符串,并使用java中的scanner读取带有空格的字符串   身份验证使用JNDI/Java中的当前用户在LDAP上进行身份验证   安卓中twitter API的java使用   java ftpClient retreivefilestream始终冻结(即使是小文件)   java在JPA中将一个值映射到多个列   java安卓socket编程   java NLP确定一段文本是否在谈论给定的主题?   更改方向上的片段布局时addView()中出现java错误   java如何从属性文件填充用spring配置的映射   是否有一个Java版本的创建像Swift一样的字典数组   java如何在不获取StackOverflowException的情况下重复可重写方法?