我有两个要在Django模板上显示的字符串变量。如果变量a为空,则不显示它。与b类似。但是,如果a和b都是非空的,则用'&'连接两个字符串。
这是Python中的逻辑。
res = ''
if a != '':
res = a
if b != '':
if res == '':
res = b
else:
res = res + ' & ' + b
print(res)
如何将这种逻辑写入Django模板?
答案 0 :(得分:2)
您应该将此逻辑写为@ruddra的注释, 但是如果您坚持使用django模板,则可以尝试以下方法:
{% if a == ' ' %}
{% if b == ' ' %}
res = ''
{% else %}
res = {{b}}
{% endif %}
{% else %}
{% if b == ' ' %}
res = {{a}}
{% else %}
res = {{a}} & {{b}}
{% endif %}
{% endif %}
答案 1 :(得分:2)
正如其他人指出的那样,将其写在 view 中而不是 template 更加容易。
如果您确实要:
{% if a != '' and b != '' %}
{{ a }}&{{ b }}
{% elif a != '' and b == '' %}
{{ a }}
{% elif a == '' and b != '' %}
{{ b }}
{% else %}
{# You didn't mention #}
{% endif %}
答案 2 :(得分:1)
res=''
if a !='':
if b!='':
res= a + '&' + b
else:
print('b is empty')
else:
print('a is empty')
print(res)