我理解with
标记的最大目的之一是在模板中“缓存复杂的变量名称”。
但什么时候使用它是个好主意?
我假设如果我使用相同的模板变量使用count()
,all()
,filter()
或get()
访问数据库,那么我应该使用{{ 1}}。
但是对于像with
这样的简单字段查找呢?在特定的模板中,我会多次调用user.username
。
我是否应该user.username
使用with
,或者甚至可以通过字典从视图中传递一个简单的字符串?
答案 0 :(得分:1)
对with
使用user.username
的唯一原因是,如果您不喜欢每次都输入长名称。该查找几乎没有开销,因此尝试缓存它没有意义。
即使转发外键和一对一关系(如user.userprofile.name
)也会在第一次使用时由ORM自动缓存,因此使用with
也没什么意义。