带有if语句的Google App Engine上的Django模板

| 我是google app引擎的新手,刚读完入门。因此,我开始在GAE上实现一个简单的应用程序,不久,当我简单地呈现一个使用if语句的html时,出现一个错误,提示“ \ TemplateSyntaxError,\” \'if \'语句格式不正确\“ \”。我改用ifequal语句解决了它的问题,但是本教程向我展示了如何在index.html(http://code.google.com/appengine/docs/python/gettingstarted/templates.html)中使用if语句 我是否会错过模板中使用if语句的任何内容? 谢谢, 柳 更新: 这是错误的详细信息。我认为Chris的答案将允许我使用\“ Smart \”(如果标记)。我将尝试尽快将Django版本更新为1.2。
Traceback (most recent call last):
  File \"C:\\Program Files\\Google\\google_appengine\\google\\appengine\\ext\\webapp\\__init__.py\", line 634, in __call__
    handler.get(*groups)
  File \"C:\\Store house\\gae\\community\\src\\community.py\", line 24, in get
    self.response.out.write(template.render(path, template_values))
  File \"C:\\Program Files\\Google\\google_appengine\\google\\appengine\\ext\\webapp\\template.py\", line 72, in render
    t = load(template_path, debug)
  File \"C:\\Program Files\\Google\\google_appengine\\google\\appengine\\ext\\webapp\\template.py\", line 100, in load
    template = django.template.loader.get_template(file_name)
  File \"C:\\Program Files\\Google\\google_appengine\\lib\\django_0_96\\django\\template\\loader.py\", line 80, in get_template
    template = get_template_from_string(source, origin, template_name)
  File \"C:\\Program Files\\Google\\google_appengine\\lib\\django_0_96\\django\\template\\loader.py\", line 88, in get_template_from_string
    return Template(source, origin, name)
  File \"C:\\Program Files\\Google\\google_appengine\\lib\\django_0_96\\django\\template\\__init__.py\", line 158, in __init__
    self.nodelist = compile_string(template_string, origin)
  File \"C:\\Program Files\\Google\\google_appengine\\lib\\django_0_96\\django\\template\\__init__.py\", line 174, in compile_string
    return parser.parse()
  File \"C:\\Program Files\\Google\\google_appengine\\lib\\django_0_96\\django\\template\\__init__.py\", line 273, in parse
    compiled_result = compile_func(self, token)
  File \"C:\\Program Files\\Google\\google_appengine\\lib\\django_0_96\\django\\template\\loader_tags.py\", line 154, in do_extends
    nodelist = parser.parse()
  File \"C:\\Program Files\\Google\\google_appengine\\lib\\django_0_96\\django\\template\\__init__.py\", line 273, in parse
    compiled_result = compile_func(self, token)
  File \"C:\\Program Files\\Google\\google_appengine\\lib\\django_0_96\\django\\template\\loader_tags.py\", line 132, in do_block
    nodelist = parser.parse((\'endblock\', \'endblock %s\' % block_name))
  File \"C:\\Program Files\\Google\\google_appengine\\lib\\django_0_96\\django\\template\\__init__.py\", line 273, in parse
    compiled_result = compile_func(self, token)
  File \"C:\\Program Files\\Google\\google_appengine\\lib\\django_0_96\\django\\template\\defaulttags.py\", line 655, in do_if
    raise TemplateSyntaxError, \"\'if\' statement improperly formatted\"
TemplateSyntaxError: \'if\' statement improperly formatted
更新2: 根据这篇文章(http://code.google.com/appengine/docs/python/tools/libraries.html#Django),当前的Google App引擎已经包含Django 1.2,但当前的默认版本是0.96,即为什么我不能使用if标记。要使用1.2版,请按照上面的链接中的说明进行操作。现在,我可以使用\“ Smart \” if标签。谢谢大家 :)     
已邀请:
如果您尝试使用标签:
{% if x == 1 %}
并且您得到了解决的错误
{% ifequal x 1 %}
这表示您的Django版本为1.1或更低。如果标签是1.2版随附的,则为“智能” 编辑添加,Django 1.2及更高版本可以在GAE上运行。如果您确实在运行旧版本的Django,请参阅此博客文章,以了解如何进行设置。     
确保您完全遵循django模板化的语法。确保将您的if放在
{% %}
内。还应确保您在
{%
%}
for
之间留有空格。 要了解更多信息,请遍历此Django模板
{% if var1 %}
 {{ var1|safe }}
{% endif %}
    

要回复问题请先登录注册