这是我的模板:
<p>{{ instance.video_source }}</p> #"youtube"
{% if instance.video_source == "youtube" %}
<h1>YOUTUBE</h1> #doesn't print "YOUTUBE"
{% endif %}
知道为什么if语句不会触发?我也试过{% if instance.video_source == youtube|stringify %}
这是这个模板标签:
def stringify(obj):
return str(obj)
并且if语句仍然不会触发。这也行不通
{% if instance.video_source == youtube|stringformat:"s" %}
<h1>YOUTUBE</h1>
{% endif %}
以下是instance.video_source
的来源:
@property
def video_source(self):
return "youtube"
知道为什么if语句不起作用?
views.py
def article(request, id):
instance = get_object_or_404(Post, id=id)
context = {
'id': id,
'instance': instance,
}
return render(request, 'article.html', context)
models.py
class Post(models.Model):
title = models.TextField(max_length=95)
@property
def video_source(self):
return "youtube"
模板
{% extends 'base/base.html' %}
{% load staticfiles %}
{% load widget_tweaks %}
{% load markdown_deux_tags %}
{% load placeholder %}
{% load stringify %}
{% block content %}
<p>{{ instance.video_source }}</p> #"youtube"
{% if instance.video_source == "youtube" %}
<h1>YOUTUBE</h1> #doesn't print "YOUTUBE"
{% endif %}
{% endblock %}