我想看看Django模板中的字段/变量是否为none。正确的语法是什么?
这就是我目前拥有的:
{% if profile.user.first_name is null %}
<p> -- </p>
{% elif %}
{{ profile.user.first_name }} {{ profile.user.last_name }}
{% endif%}
在上面的示例中,我将使用什么来替换“null”?
您还可以使用内置模板过滤器默认值
:
如果值的计算结果为False(例如,None,空字符串,0,False);将显示默认的“-”。
{{ profile.user.first_name|default:"--" }}
文档:https://docs.djangoproject.com/en/dev/ref/templates/builtins/#default
如果没有
{{ profile.user.first_name|default_if_none:"--" }}
无,假和真
都可以在模板标签和过滤器中使用。无,假
,空字符串('', "", """"""
)和空列表/元组都在以下情况下计算为False
通过if
进行评估,因此您可以轻松地执行
{% if profile.user.first_name == None %}
{% if not profile.user.first_name %}
提示:@Fabiocerqueira是对的,把逻辑留给模型,把模板限制为唯一的表示层,并在你的模型中计算这样的东西。一个例子:
# someapp/models.py
class UserProfile(models.Model):
user = models.OneToOneField('auth.User')
# other fields
def get_full_name(self):
if not self.user.first_name:
return
return ' '.join([self.user.first_name, self.user.last_name])
# template
{{ user.get_profile.get_full_name }}
希望这有帮助:)
我创建了新项目,但找不到出错的地方。 Django versiob - 3.1.5 蟒蛇 3.7.4 模板DoesNotExist位于/index。html请求方法:GET请求URL:http://127.0.0.1:8000/Django版本:3.1.5异常类型:TemplateDoesNotExist异常值: 索引。html异常位置:C:\Users\user\PycharmProjects\
我是Java新手。我只做了大约一年的编程。Spring使用模板是什么意思?在Spring,有jdbc模板、jms模板等。。java中的模板类是什么?它们是一种特殊的设计模式还是什么? 提前谢谢你。
问题内容: 我了解C 中模板的方面与Java和C#中的泛型不同。C#是一种形式,Java使用类型擦除,C 使用鸭子类型,等等。C 模板可以做很多事情,而Java和C#泛型则做不到(例如,模板专业化)。但是 Java泛型可以做很多事情,而C#和C ++则做不到(例如,使泛型族的有界类型参数成为现实 ),而 C#泛型可以做的很多事情Java和C 不能做(例如运行时通用反射)。 [编辑:显然Java泛型
我搜了Swift的书,找不到@同步的Swift版本,请问在Swift中如何进行互斥?
问题内容: 我有一个大型数据库,其中包含有标签的记录,我想删除它们。当然,有一种方法可以创建一个全选,使用和更新数据库的PHP脚本,但这需要很长时间。那么,如何使用简单(或复杂)的MySQL查询来做到这一点? 问题答案: 我不相信仅在MySQL中有任何有效的方法可以做到这一点。 MySQL确实有一个功能,但是它只能替换常量字符串,不能替换模式。您可能会编写一个MySQL存储函数来搜索和替换标签,但
问题内容: http://docs.djangoproject.com/en/dev/ref/templates/builtins/#regroup 我可以想到几种使用循环的方法,但是我特别想知道是否有一个整齐的单缸纸。 问题答案: 结合使用可获得不错的解决方案: