我正在开发Ruby on Rails 6。我的应用程序有一个控制器,它使用称为"特殊"的不同布局:
class BoxController < ApplicationController
layout "special"
...
end
所以我创建了一个新的布局/special.html.erb:
<!DOCTYPE html>
<html>
<head>
<title></title>
<%= stylesheet_link_tag "special" %>
<%= javascript_link_tag "special" %>
<%= csrf_meta_tags %>
</head>
<body>
<%= yield %>
</body>
</html>
然后,我将我的第三方css和插件放在供应商>样式表和javascript文件夹下:
stylesheets
-monnom.css
-mintymon.css
javascript
-monnom.js
-mintymon.js
我试过这个,但没有阅读我的 css 和 js。
我做错了什么?为了完成这项工作,我错过了什么?
谁能一步一步地指导我? 这里的超级初学者。
使用资产管线:
- 在
app/assets/javascripts
文件夹中创建一个special.js
文件。 -
将 JS 文件添加到
special.js
//= require monnom //= require mintymon
-
在
app/assets/stylesheets
文件夹中创建一个special.css(.scss)
文件。 -
将 CSS 文件添加到
special.css(.scss)
@import "monnom"; @import "mintymon";
-
如果它不能像这样工作,请在
config.assets.paths
中添加自定义路径,以便自动加载器可以找到它们// assets.rb config.assets.paths << Rails.root.join("vendor", "javascripts") // I think the folder name should be javascipts instead of javascript config.assets.paths << Rails.root.join("vendor", "stylesheets")
然后重新启动
rails server
您可以看到
load paths
列表。在rails c
中使用Rails.application.config.assets.paths
命令。