0

提案されているように、フラスコ構造のテンプレートフォルダーにある .html ファイル内に hogan.js コードを記述します。Pythonファイルを実行すると、次のエラーでインデックスページがレンダリングされます

jinja2.exceptions.TemplateSyntaxError
TemplateSyntaxError: unexpected char u'#' at 36667

また、index.html コードの一部を以下に添付しました。

<div class="cell link">
    <a href="{{url}}"> >> view {{type}} details</a>
    {{#console_id}}
    <a href="/project/instances/{{console_id}}/vnc" class="vnc_window">» open console</a>
    {{/console_id}}
</div>

pythonファイルコード

@app.route('/')
def index():
    return render_template('index.html')

hogan.jsファイルも含めました

<script src="{{ url_for('static', filename='horizon/lib/hogan-2.0.0.js') }}" type="text/javascript"></script>

このエラーを理解するのを手伝ってください。

4

1 に答える 1

1

次のように hogan タグをエスケープしてみてください。

{{ '{{#console_id}}' }}

それ以外の場合、フラスコはそれを jinja テンプレートの一部として扱い、中括弧内の式を評価しようとします。

自動エスケープを避けたい場合は、safeフィルターを使用できます。

 {{ '{{> table1}}' | safe }}
于 2013-09-19T08:00:29.870 に答える