2017-04-11 63 views
0

我试图按照oTree的公共产品教程,但我的模板给出了语法错误。我使用vim编辑(在这种情况下创建)的模板,但是当我尝试运行otree resetdb它返回以下错误:b'在行首 - Django模板解析中的错误

SystemCheckError: System check identified some issues: 

ERRORS: 
public_goods_tutorial: (otree.E008) Template syntax error in /[obfuscated]/oTree/public_goods_tutorial/templates/public_goods_tutorial/Contribute.html 

    1 | b'' 
    2 | b'{% extends "global/Page.html %}' 
-------^ 
    3 | b'{% load staticfiles otree_tags %}' 
    4 | b'' 
    5 | b'{% block title %} Contribute {% endblock %}' 
    6 | b'' 
    7 | b'{% block content %}' 

Error: Could not parse the remainder: '"global/Page.html' from '"global/Page.html' 

看来模板棉短绒/分析器窒息换行符/回车字符在行首(要清楚 - b'字符是“出现无处”) - 当我在vim中编辑时,它们不会出现在文件中

通过简单调查教程和编辑好的模板文件,这个问题并没有表现出来,这个错误发生在我创建的一个新文件上,而不是由otree startapp创建的文件(尽管这可能只是巧合,因为它是按字母顺序排列的)?

我已经检查过,并且这个文件的encoding和fileencoding都设置为utf-8,文档似乎提示这是django的默认设置。

什么可能导致我的错误,我该如何解决它?

回答

3

您的模板在'global/Page.html'后缺少结尾双引号。您想要:

{% extends "global/Page.html" %} 
+0

谢谢!对我没有注意到这一点感到羞耻。我被挂在奇怪的出现b上,输出并指出错误信息,并没有想到看起来更进一步。现在我将配置我的编辑器来语法突出显示django模板,这样我就不会再犯这种愚蠢的错误。 –