CSS Rails 刷新后未加载
CSS not loading after refresh in Rails
我是 rails 的新手,我创建了一个应用程序,其中用户有个人资料,可以使用编辑个人资料选项进行编辑。
在我的控制器中,
ProfilesController
在我的浏览量中,
index.html.erb
edit.html.erb
对于索引页面一切正常,但对于编辑页面,第一次加载很酷,然后刷新后,css 文件没有加载。
url 看起来像 http://localhost:3000/profiles/25/edit
无论刷新多少次,索引页面都正常,但编辑令人失望 page.I 已检查浏览器中的元素,它说 GET http://localhost:3000/profiles/25/assets/bootstrap.min.css [HTTP/1.1 404 Not Found 650ms]
即它在 localhost:3000/profiles/25/assets/
中搜索不存在的文件,而不是在 localhost:3000/assets/
中搜索
编辑:
结构:
app/assets/stylesheets
application.css
bootstrap.min.css
style.css
在application.html.erb中,我linkapplication.css作为,
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
和其他 css 个文件
<link href="assets/style.css" rel="stylesheet">
<link href="assets/bootstrap.min.css" rel="stylesheet">
我的结构和 linking 是否正确?如果不是,那么在哪里放置和使用外部 css 文件。
请帮忙!!提前致谢。
默认的Rails 资产管道假设您希望所有 样式表应用于每个 页面。一开始我觉得这很尴尬,但很快意识到它很符合 Rails' "Don't repeat yourself" 的精神,并创建合理的默认值以节省开发人员的时间。大多数时候,您编写的样式不会介意出现在所有页面上。
据我所知,您应用中的一个页面加载正常,但另一个页面加载失败,因为未找到 CSS 资产。这向我表明您正在做一些与 Rails' 资产管道不同的事情,因此 bootstrap.css 没有被错误加载。您能否在 app/assets 和 app/views 目录中搜索所有提及 bootstrap
的内容,并告诉我您找到了什么?
理想情况下,唯一应该声明 Bootstrap 样式的地方是 app/assets/stylesheets/application.css
"manifest file",看起来像这样:
/*
* This is a Sprockets manifest. See https://github.com/sstephenson/sprockets
* It compiles all CSS for the old site design (pre-WPBoom redesign).
*
*= require bootstrap
*= require jquery-ui
*= require_tree .
*/
我是 rails 的新手,我创建了一个应用程序,其中用户有个人资料,可以使用编辑个人资料选项进行编辑。
在我的控制器中,
ProfilesController
在我的浏览量中,
index.html.erb
edit.html.erb
对于索引页面一切正常,但对于编辑页面,第一次加载很酷,然后刷新后,css 文件没有加载。
url 看起来像 http://localhost:3000/profiles/25/edit
无论刷新多少次,索引页面都正常,但编辑令人失望 page.I 已检查浏览器中的元素,它说 GET http://localhost:3000/profiles/25/assets/bootstrap.min.css [HTTP/1.1 404 Not Found 650ms]
即它在 localhost:3000/profiles/25/assets/
中搜索不存在的文件,而不是在 localhost:3000/assets/
编辑:
结构:
app/assets/stylesheets
application.css
bootstrap.min.css
style.css
在application.html.erb中,我linkapplication.css作为,
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
和其他 css 个文件
<link href="assets/style.css" rel="stylesheet">
<link href="assets/bootstrap.min.css" rel="stylesheet">
我的结构和 linking 是否正确?如果不是,那么在哪里放置和使用外部 css 文件。
请帮忙!!提前致谢。
默认的Rails 资产管道假设您希望所有 样式表应用于每个 页面。一开始我觉得这很尴尬,但很快意识到它很符合 Rails' "Don't repeat yourself" 的精神,并创建合理的默认值以节省开发人员的时间。大多数时候,您编写的样式不会介意出现在所有页面上。
据我所知,您应用中的一个页面加载正常,但另一个页面加载失败,因为未找到 CSS 资产。这向我表明您正在做一些与 Rails' 资产管道不同的事情,因此 bootstrap.css 没有被错误加载。您能否在 app/assets 和 app/views 目录中搜索所有提及 bootstrap
的内容,并告诉我您找到了什么?
理想情况下,唯一应该声明 Bootstrap 样式的地方是 app/assets/stylesheets/application.css
"manifest file",看起来像这样:
/*
* This is a Sprockets manifest. See https://github.com/sstephenson/sprockets
* It compiles all CSS for the old site design (pre-WPBoom redesign).
*
*= require bootstrap
*= require jquery-ui
*= require_tree .
*/