None, False and True
всі доступні в тегах шаблонів та фільтрах. None, False
, порожній рядок ( '', "", """"""
) і порожні списки / кортежі обчислюють, False
коли обчислюється if
, так що ви можете легко це зробити
{% if profile.user.first_name == None %}
{% if not profile.user.first_name %}
Підказка: @fabiocerqueira вірно, залиште логіку моделям, обмежте шаблони єдиним шаром презентації та обчисліть подібні речі у вашій моделі. Приклад:
# someapp/models.py
class UserProfile(models.Model):
user = models.OneToOneField('auth.User')
# other fields
def get_full_name(self):
if not self.user.first_name:
return
return ' '.join([self.user.first_name, self.user.last_name])
# template
{{ user.get_profile.get_full_name }}
Сподіваюся, це допомагає :)