2017-04-11 53 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模板,這樣我就不會再犯這種愚蠢的錯誤。 –