3

我开始学习 Tornado 并阅读Tornado 简介这本书。

在处理其中一个示例时,我在 HTML 文件中缺少引号并收到以下错误:

文件“modules/book_html.generated.py”,第 11 行
if book["subtitle] != "": # modules/book.html:3
SyntaxError: EOL while scanning string literal

这就是 book.html 的样子:

<div class="book">
  <h3 class="book_title">{{ book["title"] }}</h3>
  {% if book["subtitle"] != "" %}
        <h4 class="book_subtitle">{{ book["subtitle"] }}</h4>
    {% end %}
  <img src="{{ book["image"] }}" class="book_image"/>
    <div class="book_details">
      <div class="book_date_released">Released: {{ book["date_released"]}}</div>
      <div class="book_date_added">Added: {{ locale.format_date(book["date_added"], relative=False) }}</div>
      <h5>Description:</h5>
        <div class="book_body">{% raw book["description"] %}</div>
    </div>
</div>

添加缺少的报价,重新启动服务器(在 localhost 上运行),但仍然出现相同的错误。完全从书的 github复制粘贴的代码,仍然是同样的错误。注释掉整个文件,同样的事情。用来自 github 的代码替换了整个代码(所有文件、main.py、模板文件夹中的所有内容、所有内容),同样的事情。看起来 Chrome 正在缓存文件或其他东西,但我什至将文件名更改为 book2.html,并且文件名更改后出现错误:

文件“modules/book2_html.generated.py”,第 11 行
if book["subtitle] != "": # modules/book2.html:3

我尝试清除缓存,没有运气。我去了 Chrome 的开发人员工具并检查了禁用缓存复选框,同样。我还尝试在 Firefox 中运行 Web 应用程序和同样的事情。

有没有人遇到过类似的问题?任何帮助,将不胜感激。谢谢!

4

1 回答 1

0

我很确定龙卷风也会缓存模板。取自他们的文档

Loader 是一个从根目录加载模板并缓存编译好的模板的类:

因此,如果您的调用加载程序可能是您的问题。

于 2012-11-19T00:40:57.043 回答