相关疑难解决方法(0)

如何在django模板中循环7次

这是我的代码:

{% for i in range(7)%}
        <option value={{i+1}}> {{i+1}}</option>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

但它显示错误,

我能做什么 ,

谢谢

django templates

18
推荐指数
2
解决办法
4万
查看次数

如何在django模板中设置自定义forloop起点

java中有一个forloop,我可以告诉它从哪里开始,到哪里结束:

for(int i=10;i<array.length;i++){

}
Run Code Online (Sandbox Code Playgroud)

但我如何int i=10在django模板中实现这一点?我怎样才能自己设定起点和终点?

有一个forloop.firstforloop.last,但它们是在循环中定义的,我不能做这样的事情?:

{{forloop.first=10}}

{% for athlete in athlete_list %}
    <li>{{ athlete.name }}</li>
{% endfor %}

{{forloop.last=20}}
Run Code Online (Sandbox Code Playgroud)

我读了django doc,但这个功能似乎不存在

python django django-templates django-template-filters

5
推荐指数
1
解决办法
1342
查看次数

渲染时捕获 TypeError:'int' 对象在 django 模板中不可迭代

我试图list_length在 for 循环中迭代 a 。是list_length一个int作为上下文变量传递给模板的对象。但是当我尝试这样做时,它给出了这个typeError。有人可以帮忙吗?

{% for i in list_length %}
    <tr>
        <td>{{ i }}</td>
    </tr>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

python django for-loop django-templates typeerror

4
推荐指数
1
解决办法
1万
查看次数

Django 模板是否允许在 for 循环中使用 range()?

我试图在我的模板中使用 for 循环,但出现错误。

这是金贾:

    {% for i in range(1,10) %}
        <h2>{{i}}</h2>
    {% endfor %}
Run Code Online (Sandbox Code Playgroud)

这是错误:

django.template.exceptions.TemplateSyntaxError: Could not parse the remainder: '(1,10)' from 'range(1,10)'
Run Code Online (Sandbox Code Playgroud)

我有点困惑。这表明它有问题,range甚至它不存在,但我在其他 Stack Overflow 帖子中看到它被建议作为解决方案,例如这个: 如何在 Jinja2 中模拟 while 循环

jinja/django 中是否存在范围?如果是,为什么这不起作用,如果不是,最好的选择是什么?

html django django-templates jinja2

4
推荐指数
1
解决办法
7692
查看次数

Django自定义模板标记未在循环中呈现

我的自定义标签:

# app/templatetags/ctags.py

def getgenre():
    genre = ["Test1", "Test2"]
    return genre

register.simple_tag(getgenre)
Run Code Online (Sandbox Code Playgroud)

我的HTML:

# app/templates/base.html

{% load ctags %}
<!-- {% getgenre %} -->
{% for genre in getgenre %}
    <li>{{genre}}</li>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

这为我呈现了一个空白页面.如果我取消注释{%getgenre%},则django按预期呈现["Test1","Test2"].我已经尝试了无数种设置我的标签(包括非simple_tag方式)的变化无济于事.我无法迭代我的一个自定义标记返回的任何值.

我错过了一些基本的东西吗?

python django django-templates

3
推荐指数
1
解决办法
1414
查看次数

在Django模板中创建年份下拉列表

我想在django模板中创建一年的下拉列表.下拉列表将包含2011年的开始年份,而结束年度应为当年的5年.

例如:如果今天我看到它将显示我2011年,2012年,2013年,2017年的年份.

可以通过从views.py发送列表并在模板中循环或在forms.py中定义来完成.

但我不想在这里使用任何形式.我只需要在模板中显示它.

我怎么能在Django模板中做到这一点.

python django django-templates

2
推荐指数
1
解决办法
8509
查看次数

Jinja / Django for 循环范围不起作用

我正在构建一个 django 模板来根据从视图传递的参数来复制图像;然后,模板在 for 循环中使用 Jinja2 来复制图像。

但是,我只能通过传递我在视图中创建的列表来使其工作。如果我尝试使用 jinja 范围,则会收到错误(“无法解析其余部分:...”)。

阅读此链接,我发誓我使用了正确的语法。

模板

{% for i in range(variable) %}
    <img src=...>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

我检查了我传入的变量;它是 int 类型。哎呀,我什至尝试摆脱变量(用于测试)并尝试使用硬编码数字:

{% for i in range(5) %}
    <img src=...>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

无法解析余数:“range(5)”中的“(5)”

如果我将参数字典中的列表传递给模板(并使用该列表代替范围语句),它就会起作用;无论我想要多少次,图像都会重复。

我缺少什么? Jinja 上的文档(for 循环范围)和前面的链接都告诉我这应该与范围和变量一起使用。

django-templates jinja2

1
推荐指数
1
解决办法
4687
查看次数