python-如何将模板变量传递给Django模板中的切片过滤器
作者:互联网
我正在尝试使用变量在Django模板中切片循环
常规方式
{% for article in module.module_article_key.module_article_category.article_category_key.all|slice:":2" %}
{{ article.article_title }}
{% endfor %}
需要什么
{% for article in module.module_article_key.module_article_category.article_category_key.all|slice:":module.module_article_key.module_article_count" %}
{{ article.article_title }}
{% endfor %}
所以我们有工作变量{{module.module_article_key.module_article_count}}
通常,此变量会为该模块提供存储的整数值,但是我使用它来切片循环-没有任何反应
解决方法:
您需要先将module_article_count强制转换为字符串,然后通过嵌套的{% with %}进行articleSlice的使用,并在切片过滤器中使用生成的模板变量,如下所示:
{% with articleCount=module.module_article_key.module_article_count|stringformat:"s" %}
{% with articleSlice=":"|add:articleCount %}
{% for article in module.module_article_key.module_article_category.article_category_key.all|slice:articleSlice %}
{{ article.article_title }}
{% endfor %}
{% endwith %}
{% endwith %}
标签:django-templates,python,django 来源: https://codeday.me/bug/20191108/2010271.html