Rails 3.1 - 如何在普通应用程序和 active_admin gem 之间分离 CSS/JS
我的应用程序部署在 Rails 3.1 和 Heroku 上。
1. 在 production.rb 中,如果我有 config.assets.compile = true
则 active_admin 才起作用。但是,在生产中,我希望 config.assets.compile = false 对于普通应用程序 CSS 和 JS。活动管理模块将仅由管理员使用,因此速度可能很慢。
2. 此外,自从我安装了 active_admin gem 后,我的正常 CSS 受到了严重干扰。
因此,我想以某种方式拆分 active_admin 和普通应用程序的 CSS 和 JS,以便:
1. 仅当我点击 localhost:3000/admin
时,才显示 active_admin 的 CSS 和 JS管理员点击,而普通应用程序则不会。当我在任何其他 URL 上时,正常应用程序的 CSS 和 JS 会点击,但活动管理员不会点击。
2.我可以config.assets.compile = false
到普通应用程序CSS和JS,同时单独为active_admin设置config.assets.compile = true。
这可能吗?
My application is deployed on Rails 3.1 and on Heroku.
1. In production.rb, if I have config.assets.compile = true
only then active_admin works. However, in production, I want config.assets.compile = false for normal application CSS and JS. The active admin module will be used only by administrator so it can be slow.
2. Moreover, since I installed active_admin gem my normal CSS has got terribly disturbed.
Hence, I want to somehow split the CSS and JS of active_admin and normal application so that:
1. Only when I hit localhost:3000/admin
then CSS and JS of active admin hits and that of normal app does not. When I am on any other URL, then CSS and JS of normal app hits but active admin's does not.
2. I can config.assets.compile = false
to normal app CSS and JS while make it config.assets.compile = true for active_admin alone.
Is this possible?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
好消息是,您可以将两者的 .compile 设置为 false,并且两者都运行得很快!
活动管理使用自己的以“active_admin”开头的清单。默认情况下,Rails 不会预编译它们。
要预编译它们,您需要将这些文件添加到 production.rb 中的预编译数组中:
这将在 /assets 文件夹中创建文件,并允许您始终将 .compile 设置为 false。
不要忘记还设置:
config.assets.digest = true
The good news is that you can have .compile set to false for both, and have both run fast!
Active admin uses its own manifests that start with 'active_admin'. By default these won't be precompiled by Rails.
To get them precompiled you need to add these files to the precompile array in production.rb:
This will create the files in the /assets folder and allow you to set .compile to false all the time.
Don't forget to also set:
config.assets.digest = true