特定于控制器的css文件

时间:2016-02-03 10:49:21

标签: css ruby-on-rails

所以在我的routes.rb文件中,我添加了这个小东西:

namespace :admin do
    get :dashboard, to: 'dashboard#index'

现在,我的控制器目录中有Admin::DashboardController,我将dashboard.css.less添加到stylesheets/admin。但是,当我转到admin/dashboard时,这个文件根本就没有加载。如何自动包含此文件?通常使用rails我的印象是适当的文件用于控制器而无需任何设置。

1 个答案:

答案 0 :(得分:2)

您最好使用以下内容:

#config/routes.rb
namespace :admin do
  resources :dashboard, only: :index #-> url.com/admin/dashboard
end

<强>资产

资产通过manifest files加载。

每当你编译&#34;清单文件&#34;时,require指令告诉sprockets将各种其他文件连接到那个文件中;意图是在您的布局中包含一个文件(而不是3个单独的文件)。

默认情况下,仅支持应用

# app/assets/stylesheets/application.css
/*
  *= require "x"
*/

如果要添加额外清单文件,则需要将文件添加到预编译队列和布局中:

# config/initializers/assets.rb
Rails.application.config.assets.precompile += %w( admin/dashboard.js admin/dashboard.css )

# app/assets/stylseheets/application.css
/*
  *= require_tree .
  *= stub admin/dashboard
*/

# app/assets/stylesheets/admin/dashboard.css
/*
  *= require "y"
*/

# app/views/layouts/admin.html.erb
<%= stylesheet_link_tag "admin/dashboard" %>