Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django`if`语句不是';不行吗?_Django - Fatal编程技术网

Django`if`语句不是';不行吗?

Django`if`语句不是';不行吗?,django,Django,在我的模板中,我添加了以下调试语句: <script> console.log("leaderboard? {{ client_settings.LEADERBOARD_ENABLED }}"); </script> 在后面的代码中,我有以下代码: {% if client_settings.LEADERBOARD_ENABLED %} <button data-theme='a' onClick="$('.leaderboard').slideDown();

在我的模板中,我添加了以下调试语句:

<script>
  console.log("leaderboard? {{ client_settings.LEADERBOARD_ENABLED }}");
</script>
在后面的代码中,我有以下代码:

{% if client_settings.LEADERBOARD_ENABLED %}
<button data-theme='a' onClick="$('.leaderboard').slideDown();">Leaderboard</button>
{% endif %}
{%if client\u settings.leadboard\u ENABLED%}
排行榜
{%endif%}

我认为这会导致排行榜按钮不出现。。。但确实如此!有人知道这是为什么吗?

布尔值false的Python值用大写字母F字符串化为“false”。由于您的console语句用小写字母F表示“false”,因此
客户端设置的值。启用排行榜的
可能是字符串
“false”
,这将被解释为布尔值True

改变这一点的Pythonic方法是在设置启用的
排行榜
变量时使用
True
False
,而不是字符串
“True”
“False”
。如果不可行,可以将模板测试更改为:

{% if client_settings.LEADERBOARD_ENABLED == "true" %}

boolean false的Python值被字符串化为带大写字母F的“false”。由于您的console语句带有带小写字母F的“false”,因此
客户端设置的值。启用排行榜的
可能是字符串
“false”
,这将被解释为boolean True

改变这一点的Pythonic方法是在设置启用的
排行榜
变量时使用
True
False
,而不是字符串
“True”
“False”
。如果不可行,可以将模板测试更改为:

{% if client_settings.LEADERBOARD_ENABLED == "true" %}

你能告诉我初始化设置的方法吗<代码>排行榜\已启用=??很可能您在那里有一个字符串。将其更改为
leadboard\u ENABLED=False
@karthikr它将从控制台打印输出显示为
“False”
。它是在Django管理面板中设置的,带有“是/否”开关。您能否显示该设置的初始化方式<代码>排行榜\已启用=??很可能您在那里有一个字符串。将其更改为
leadboard\u ENABLED=False
@karthikr它将从控制台打印输出显示为
“False”
。它是在Django管理面板中设置的,带有“是/否”开关。太好了,在模板语言中解决这个问题最简单的方法是什么?太好了,在模板语言中解决这个问题最简单的方法是什么?