default_if_none 需要 2 个参数,已提供 1 个

问题描述 投票:0回答:3

我使用了default_if_none,如下所示:

<input type="text" name='username' value="{{ value|default_if_none: '' }}">

但是,我收到以下错误:

django.template.exceptions.TemplateSyntaxError:default_if_none 需要 2 个参数,1 个提供

那么,我该如何解决这个错误呢?

python django django-templates frontend django-template-filters
3个回答
50
投票

您有多余的空格,导致错误。

value="{{ value|default_if_none: '' }}"

应该是

value="{{ value|default_if_none:'' }}"

0
投票

使用 Django 模板过滤器,在

:
之前或之后放置空格会出现错误,如下所示:

                            # Space (Error)
                               ↓ ↓
value="{{ value|default_if_none : '' }}"

因此,不要在其中放置任何空格,以免出现错误,如下所示:

                         # No space (No error)
                              ↓ ↓
value="{{ value|default_if_none:'' }}"

此外,在

|
之前或之后添加空格不会出现错误:

            # Space (No error)
               ↓ ↓
value="{{ value | default_if_none:'' }}"

0
投票

如果你使用 Djnago,那么 synax 会有些不同

如果你想设置默认文本,试试这个

{{ some_value|default:"Deafult text" }}

{{ some_value|default:another_value }} 

如果你想设置另一个值

© www.soinside.com 2019 - 2024. All rights reserved.