我是开发新手,所以请耐心等待:)
我决定使用jetstrap设计我的网站(引导程序的可视化设计器),下载html然后使用python编程后端并将其上传到谷歌应用引擎。
当我从jetstrap下载文件时,我有一个带有html的文件夹和一个名为assets的文件夹,里面有3个文件夹。 CSS,图片,js。
如果我用浏览器打开html,我可以看到我设计的网站。但是如果我使用python渲染它并在localhost上打开它,我会看到它没有任何CSS。
我尝试将该文件夹添加到app.yamal
application: web-development-test
version: 1
runtime: python27
api_version: 1
threadsafe: yes
handlers:
- url: /templates/assets
static_dir: stylesheet
- url: .*
script: main.app
libraries:
- name: jinja2
version: latest
templates是我的应用程序目录中的文件夹,我的所有htmls和资产都是带有css,js和images的文件夹。
来自jetstrap的html的一部分是:
<link href="assets/css/bootstrap.css" rel="stylesheet">
<style>
body { padding-top: 60px; /* 60px to make the container go all the way
to the bottom of the topbar */ }
</style>
我在那里看到了rel = stylesheet,这就是为什么我在app.yamal上添加了static_dir:stylesheet
我所做的几乎所有事情都来自在线教程。
提前谢谢!
编辑: 我的app文件夹的整个结构
google project
app.yaml
favicon.ico
index.yaml
main.py
templates
page1.html
page2.html
assets
css
img
js
答案 0 :(得分:2)
app.yaml中的第一个处理程序说“在URL路径/ templates / assets中提供目录样式表(可在应用程序根目录中找到)”。这可能与你想要的相反。请尝试使用此处理程序:
- url: /assets
static_dir: templates/assets
这将使其成为例如http://localhost:8090/assets/css/bootstrap.css
在templates/assets/css/bootstrap.css
返回文件。假设page1.html在/
或/page1
或类似地方提供,那么应该按照您的意愿行事。
答案 1 :(得分:2)
处理程序的顺序可能会导致问题:
url:/ stylesheets static_dir:stylesheets url:/。*脚本:helloworld.application
将取代
url:/。*脚本:helloworld.application url:/ stylesheets static_dir:stylesheets
答案 2 :(得分:1)
我遇到了同样的问题。即使是app.yaml文件中的缩进错误,我也可以看到后者的一切,here。 我修复了缩进,就是这样。