我正在构建一个 web2py 应用程序。
我使用我自己的 style.css 文件
我知道下面的代码
{{response.files.append(URL('static','css/base.css'))}}
{{include 'web2py_ajax.html'}}
将我的 css 文件链接到我的应用程序。
我将其用于 layout.html;用于应用程序的每个页面。
最初,我对此没有问题...
突然,在某些时候,我的 css 没有更新......
点之前的每个 css 都可以正常工作。 点之后的每个 css,根本不起作用。
在 web2py 编辑器中,所有 css 更改都会更新。但是,如果运行它,css 不会更新...如果我使用 chrome 检查 css 代码,css 不会更新并保留到以前的 css 文件..
为了说明,我给你举个例子
最初我只有以下内容。
#title{
font-size: 90px;
}
然后我把它改成下面的
#title{
font-size:100px;
}
在 web2py 编辑器中,保存更改并将其设置为 100px。但是,如果我运行应用程序并使用 chrome inspect 查看 css 文件,它仍然保持为 90px。
我以为服务器可能出了什么问题,所以我重新启动了。我仍然遇到错误。
我能想到的另一件事是使用 bootstrap..
下面是layout.html的head部分
<head>
<title>NR</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
{{response.files.append(URL('static','css/bootstrap.min.css'))}}
{{response.files.append(URL('static','css/style.css'))}}
{{include 'web2py_ajax.html'}}
</head>
其实我有一个解决办法... 如果我创建具有不同名称的 css 文件,并复制并粘贴所有 css 工作,它工作! 但是,这需要额外的工作……创建新的 css 文件并复制和粘贴……这不是好方法。
你能帮帮我吗?
谢谢
最佳答案
也许您的 Web 服务器配置为设置 HTTP 响应 header ,以便浏览器缓存 Assets (在这种情况下,它们不会在每次请求时重新发送)。如果这只是一个开发问题,您可以简单地强制您的浏览器重新加载所有 Assets (例如,通过按 CTRL-F5)。
有关更通用的解决方案,请参阅 static asset management 上的文档.
另一种选择是让 web2py 自己提供静态内容,在这种情况下,每个页面都会重新请求 Assets ,如果 Assets 自上次发送以来未发生变化,web2py 将返回 304 响应。
关于css 在我的 web2py 应用程序中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36856260/