如何调用在Django模板中接受参数的函数?

2024-04-28 21:12:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我将传递给Django的模板一个函数,它返回一些记录。 我想调用这个函数并迭代它的结果。

{% for item in my_func(10) %} 

那不管用。 我试图将函数的返回值设置为一个变量并遍历该变量,但似乎无法在Django模板中设置变量。

有什么正常的方法吗?


Tags: django方法函数in模板formy记录
3条回答

如果你有一个对象,你可以把它定义为@property,这样你就可以不用调用就得到结果,例如

class Item:
    @property
    def results(self):
        return something

然后在模板中:

<% for result in item.results %>
...
<% endfor %>

不能调用模板中需要参数的函数。Write改为模板标记或筛选器。

I'm passing to Django's template a function, which returns me some records

为什么不将存储函数返回值的变量(而不是函数)传递给Django模板?


I've tried to set fuction's return value to a variable and iterate over variable, but there seems to be no way to set variable in Django template.

您应该在Django视图而不是模板中设置变量,然后将它们传递给模板。

相关问题 更多 >