Google App引擎+ HTML + PDF

时间:2013-06-16 20:42:20

标签: python google-app-engine pdf

我使用Google App引擎+ Python + Jinja2和MySQL数据库创建了一个简单的网站。该网站有一个主页面(index.html)使用Jinja2从Python代码渲染,数据从MySQL数据库加载。

在index.html页面上,我创建了一个水平菜单(关于,主页,服务,产品)。

当我点击“关于”时,我想加载一个新的HTML页面(比如About.html)。同样,当我点击Products时,(我想加载Products.Html)。在这里,我想嵌入一个pdf文件。

我不确定如何添加这些额外的HTML页面。有人可以提出建议。

这是我的App.yaml文件。

application: ckappnotes
version: 1
runtime: python27
api_version: 1
threadsafe: yes

handlers:
- url: /stylesheets
  static_dir: stylesheets

- url: .*
  script: stn.app

libraries:
- name:  jinja2
  version:  latest

我已将这些行添加到App.yaml。

- url: /
  static_files: DTD.html
  upload: DTD.html

- url: /
  static_files: S1.pdf
  upload: S1.pdf

这样做会覆盖我原来的index.html页面。

1 个答案:

答案 0 :(得分:0)

您的url条目必须彼此唯一。如您所知,您已使用url: /覆盖了主页。相反,您需要为每个页面创建一个url,如下所示:

- url: /DTD.html
  static_files: DTD.html
  upload: DTD.html

- url: /S1.pdf
  static_files: S1.pdf
  upload: S1.pdf

如果您只有几个文件,这可以,但您可能想要使用Static File Pattern Handler

- url: /page
  static_dir: page

在此示例中,您将DTD.html和S1.pdf放入名为page的新文件夹中。您的index.html文件会将其引用为/page/DTD.html/page/S1.pdf。然后,当您想要添加第三个文件时,您不需要更改app.yaml,只需将它们添加到该文件夹​​并使用相同的URL模式。