django模板if判断

views传入了一个boolean类型值pay,明明是False,但是html模板判断时依然if pay依然执行了语句

                  {% if pay %}
                      <a href="#">pay{{ pay }}</a>
                  {% elif hfut %}
                      <a href="/pay">hfut{{ hfut }}</a>
                  {% elif getin %}
                      <a href="/getin">getin{{ getin }}</a>
                  {% else %}
                      <a href="/login">login</a>
                  {% endif %}

views.py

def index(req):
    username = req.COOKIES.get('username','')
    balance = req.COOKIES.get('balance', '')
    getin = req.COOKIES.get('is_getin','')
    hfut= req.COOKIES.get('hfut', '')
    pay = req.COOKIES.get('pay','')
    return render(req,'lakers.html' ,context={'username':username, 'balance':balance, 'getin':getin, 'hfut':hfut, 'pay':pay})

图片描述
图片描述

阅读 10.2k
3 个回答
print(pay, type(pay)) # render之前打印一下,我怀疑你的pay是字符串的'False' python中 if 'False' 是真
return render(req,'lakers.html' ,context={'username':username, 'balance':balance, 'getin':getin, 'hfut':hfut, 'pay':pay})

你传了一个'False'的字符串

{% if pay == 'False' %}
<!-- other code in here -->
{% endif %}

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏