将 Django 布尔值从默认值“False”更改为“No”

jam*_*rne 2 python django boolean

我有一个布尔值是假的,但我希望它在网页上打印时说“否”而不是“假”。

如果它是真的,那么打印“是”而不是“真”也是如此。我假设这是可能的!

模型中的代码:

urgent = models.BooleanField()
Run Code Online (Sandbox Code Playgroud)

模板中的代码:

<p>Upvotes: {{ ticket.urgent}}</p>
Run Code Online (Sandbox Code Playgroud)

现在,打印这听起来很奇怪:

Urgent: False
Run Code Online (Sandbox Code Playgroud)

但这听起来更自然,更好的用户体验等:

Urgent: No
Run Code Online (Sandbox Code Playgroud)

Say*_*yse 6

你可以使用 yesno

将 True、False 和(可选)None 的值映射到字符串“yes”、“no”、“maybe”或作为逗号分隔列表传递的自定义映射,并根据值返回这些字符串之一:

<p>Upvotes: {{ ticket.upvotes|yesno }}</p>
Run Code Online (Sandbox Code Playgroud)

  • 谢谢@Sayse!我所做的是```&lt;p&gt;紧急:{{ticket.urgent|yesno:"Yes,No" }}&lt;/p&gt;``` (3认同)