将命名参数传递给 Django 模板中的函数
Posted
技术标签:
【中文标题】将命名参数传递给 Django 模板中的函数【英文标题】:Passing named arguments to functions in Django templates 【发布时间】:2011-04-18 21:00:33 【问题描述】:我的 Django 控制器中有一个函数,调用如下:
trip.driverTrip.filter(status='pending')
这相当于在模板中调用 this。如果我只想调用过滤器函数,以下就足够了:
trip.driverTrip.filter
但是有没有办法传递参数?
【问题讨论】:
【参考方案1】:Django 中没有控制器...你的意思是 a view
;) 吗?
模板中的等价物是:
trip.driverTrip|filter:"pending"
但是,要使其正常工作,您的函数 filter
必须注册为模板过滤器,并在模板中“加载”。你不能像这样调用任何函数(或方法)。另外,如果您这样做,假设满足上述条件,则意味着您将trip.driverTrip
作为第一个参数传递给filter
,而"pending"
是一个附加参数。
这能回答你的问题吗?
【讨论】:
是的,查看,对不起,是的,它确实完美地回答了我的问题:)。谢谢!【参考方案2】:django template system, calling a function inside a model 解释说,您不能直接执行此操作,但该站点也建议了一种解决方法。
【讨论】:
以上是关于将命名参数传递给 Django 模板中的函数的主要内容,如果未能解决你的问题,请参考以下文章
使用django模板将参数传递给页面上的Javascript代码?
如何将三个或多个参数传递给自定义模板标签过滤器 django?