Ruby on rails 在Rails 4中为不同的命名空间使用不同的资产

Ruby on rails 在Rails 4中为不同的命名空间使用不同的资产,ruby-on-rails,Ruby On Rails,我有一个Rails 4应用程序,它在整个应用程序中使用app/assets/javascripts和app/assets/stylesheets中的资产。但是,我为应用程序的管理部分创建了一个嵌套资源。我希望管理界面与最终用户看到的不同(不同的布局、不同的资产) 我尝试在application.css文件中更改以下内容: *= require_tree . 到 但整个应用程序似乎仍在使用相同的资源。有谁能告诉我如何为Rails 4应用程序的不同部分使用不同的资源吗?我知道这三种组合 *= r

我有一个Rails 4应用程序,它在整个应用程序中使用
app/assets/javascripts
app/assets/stylesheets
中的资产。但是,我为应用程序的管理部分创建了一个嵌套资源。我希望管理界面与最终用户看到的不同(不同的布局、不同的资产)

我尝试在application.css文件中更改以下内容:

*= require_tree .


但整个应用程序似乎仍在使用相同的资源。有谁能告诉我如何为Rails 4应用程序的不同部分使用不同的资源吗?

我知道这三种组合

 *= require_tree . # for base asset directory
 *= require_tree ./path # a specific path
 *= require filename # some file

这里的问题不在于如何在资产清单中包含文件,而在于对应用程序的公共和私有/管理部分使用相同的清单

您应该创建一个名为
app/assets/stylesheets/admin.css的新文件,并在其中包含管理布局所需的资产。也许是这样的:

*= require_tree ./admin
然后更改现有的
应用程序。css
不使用
require\u树。
而是使用更具体的内容,例如:

*= require_tree ./main
并将所有公共CSS文件移动到样式表目录中的该目录中

最后,您需要为您的管理页面创建一个新的布局,或者修改应用程序布局,使样式表和javascript包含基于您正在使用的应用程序的哪个部分是动态的


为简单起见,您可能只想使用一个名为
app/views/layouts/admin.html.erb的管理部分的新布局,然后更新应用程序页面的任何控制器,以使用我所需要的
layout:admin

!谢谢:)只有一条评论,你写了
require-tree./admin
,但应该是
require\u-tree./admin
,这样才能正常工作。
*= require_tree ./main