Добавить новую папку в путь к ресурсам в рельсах 4
Я хочу создать новую папку в app/assets
, в этой папке у меня есть файл, у каждого файла есть папка css и папка javascript, например, следующие адреса:
app/assets/plugins/bootstrap/css/bootstrap.min.css
app/assets/plugins/bootstrap/js/bootstrap.min.js
Я использую ниже код для определения файла css
, но не true, и рельсы не могут найти и загрузить 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
и javascript
из plugin
папки?
Примечание:
Когда я хочу увидеть файл css
в браузере по этому адресу:
http://localhost:3000/assets/plugins/bootstrap/css/bootstrap.min.css
Я получаю ниже ошибки:
No route matches [GET] "/assets/plugins/bootstrap/css/bootstrap.min.css"
Но для css файла, который существует в assets/stylesheets/
, я могу увидеть файл css в браузере, указав адрес, например top. Почему существует каталог beetwin stylesheets
и plugins
?
Ответы
Ответ 1
В 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 в своем браузере,
i.e., http://localhost:3000/assets/bootstrap.min.css
/http://localhost:3000/assets/bootstrap.min.js
Это означает, что вы добавили вышеуказанные пути к ресурсам.
Теперь вы можете вызвать его с помощью stylesheet_link_tag
или javascript_include_tag
.
Надеюсь, это поможет:)