每个操作的Rails scss样式表

每个操作的Rails scss样式表,css,ruby-on-rails,asset-pipeline,Css,Ruby On Rails,Asset Pipeline,如何在rails中呈现每个动作的样式表 由于我的应用程序不是标准CRUD应用程序,我的控制器最终会有一些自定义路由,这些路由需要非常不同的CSS 所以,我想知道,有没有办法在每个操作的基础上加载css,但仍然利用资产管道 谢谢在样式表目录中为每个控制器创建一个目录,并创建与您的操作相对应的css文件,然后将其放入布局文件中 <%= stylesheet_link_tag "#{params[:controller]}/#{params[:action]}" %> 您可以使用特定于

如何在rails中呈现每个动作的样式表

由于我的应用程序不是标准CRUD应用程序,我的控制器最终会有一些自定义路由,这些路由需要非常不同的CSS

所以,我想知道,有没有办法在每个操作的基础上加载css,但仍然利用资产管道


谢谢

在样式表目录中为每个控制器创建一个目录,并创建与您的操作相对应的css文件,然后将其放入布局文件中

<%= stylesheet_link_tag "#{params[:controller]}/#{params[:action]}" %>


您可以使用特定于控制器的资产。只需从application.css中删除
*=require_树。
。并通过
将特定于操作的样式表包含在其视图中,但您必须告诉rails通过
rails.application.config.assets.precompile=[“style.css”]
编译它们。你可以阅读更多关于它的内容。通过这种方式,我想我们使用的是rails资源管道,而不是默认方式。

根据控制器路径和操作向主体添加唯一id:

助手:

  def page_id
    "#{controller_path.tr('/', '-')}-#{action_name}".dasherize
  end
布局:

<body id="<%= page_id %>"...

我相信我们没有利用rails资产管道。我在这里找到了这个链接,我相信这就是我要寻找的!
#users-index {
  .. page specific styles here ..
}