在rails 4中将新文件夹添加到资产路径

时间:2014-04-21 06:44:53

标签: ruby-on-rails-4 asset-pipeline

我想在app/assets中创建一个新文件夹,在这个文件夹中我有一些文件,每个文件都有css文件夹和javascript文件夹,如下面给出的地址:

app/assets/plugins/bootstrap/css/bootstrap.min.css app/assets/plugins/bootstrap/js/bootstrap.min.js

我使用下面的代码来定义css文件,但不是true而且rails无法找到并加载bootstrap.min.css

<%= stylesheet_link_tag "bootstrap.min", media: "all", "data-turbolinks-track" => true %>

<%= stylesheet_link_tag "../plugins/bootstrap/css/bootstrap.min", media: "all", "data-turbolinks-track" => true %>

如何在css文件夹中声明javascriptplugin

注意: 当我想通过此地址在浏览器中查看css文件时:

http://localhost:3000/assets/plugins/bootstrap/css/bootstrap.min.css

我得到以下错误: No route matches [GET] "/assets/plugins/bootstrap/css/bootstrap.min.css"

但是对于assets/stylesheets/中存在的css文件,我可以通过输入地址来查看浏览器中的css文件。为什么不同的beetwin stylesheetsplugins目录?

1 个答案:

答案 0 :(得分:24)

application.rb中,添加以下行:

config.assets.enabled = true
config.assets.paths << Rails.root.join("app", "assets", "plugins", "bootstrap","css")
config.assets.paths << Rails.root.join("app", "assets", "plugins", "bootstrap","js")

然后您就可以在浏览器中访问bootstrap.min.css和bootstrap.min.js,

即,http://localhost:3000/assets/bootstrap.min.css / http://localhost:3000/assets/bootstrap.min.js

这意味着您已将上述内容添加到资产路径中。

现在,您可以使用stylesheet_link_tagjavascript_include_tag来调用它。

希望有所帮助:)