Ruby on rails Rails活动管理css与Twitter引导css冲突
我对Rails资产管道有点陌生,所以我可能做错了什么。我正在尝试将Active Admin用于我的后端,将twitter引导css用于我的前端应用程序 我将bootstrap.css添加到/app/assets/stylesheets,然后还添加了:Ruby on rails Rails活动管理css与Twitter引导css冲突,ruby-on-rails,css,twitter-bootstrap,asset-pipeline,Ruby On Rails,Css,Twitter Bootstrap,Asset Pipeline,我对Rails资产管道有点陌生,所以我可能做错了什么。我正在尝试将Active Admin用于我的后端,将twitter引导css用于我的前端应用程序 我将bootstrap.css添加到/app/assets/stylesheets,然后还添加了: //= require bootstrap 到application.css-然后我在本地对资产进行了预编译 它似乎工作得很好,但一些样式没有完全通过,我认为这是因为active admin的css覆盖了它 我的理解是,应用程序将css资产编译成
//= require bootstrap
到application.css-然后我在本地对资产进行了预编译
它似乎工作得很好,但一些样式没有完全通过,我认为这是因为active admin的css覆盖了它
我的理解是,应用程序将css资产编译成应用程序css公共资产,并且应用程序在运行时使用该文件
我需要以某种方式将两者分开,让它使用推特引导css作为前端的主要css,并可能告诉它不要在前端使用活动管理员的css文件
做这件事最好的方法是什么?你看过关于使用ActiveAdmin的RailsCasts视频吗?在视频中,Ryan向您展示了如何防止ActiveAdmin CSS踩在您的主应用程序CSS上 将信息从视频移动到应答 在application.css中删除:
*= require_tree .
对于rails 4,建议将其添加到production.rb
:
config.assets.precompile += ['active_admin.css']
然而,关于这个答案的一条评论说,这是不必要的。到目前为止,我还不需要它。我也有同样的问题,可以通过移动来解决
app/assets/stylesheets/active_admin.css.scss
到
活动管理资产应位于vendor/
中,如下所述:
“供应商/资产是指由外部实体拥有的资产,例如JavaScript插件和CSS框架的代码。”对于我来说,将
应用程序更改为以下内容可以解决问题:
*= require bootstrap
*= require_tree .
*= stub "active_admin"
马特斯利是对的。。。Ryan的RailsCast(#284)将向您展示如何解决这个问题(这都是因为application.css中的“require_树”)。删除/编辑将解决CSS问题。此方法在开发模式下对我很有效,但在生产中,我在运行bundle exec rake assets:precompile时遇到问题:在我的情况下,CSS文件完成混合,bootstrap.CSS被ActiveaAdmin覆盖。有什么想法吗?。谢谢但是require\u tree.
是让所有CSS文件通过Rails神奇地压缩成一个的魔法。。。这个答案是多余的,应该是unacceptedit,在运行bundle exec rake资产:precompile
?。在我的例子中,css文件完成混合,bootstrap.css被activeadmin覆盖。有什么想法吗?。对active\u admin.js
也这样做。将其移动到vendor/assets/javascripts/active_admin.js
应该有人提交一份PR来修复此上游问题。这是一个完美的解决方案。如果不需要(即使不冲突),为什么要在/admin名称空间之外加载一堆额外的css?这只会降低普通用户的页面加载时间。对于.scss和.js文件,它也解决了我的问题,所以它对rails 5仍然有效。+这似乎对我有效,谢谢。我还没弄清楚存根到底是做什么的,你介意给我一个提示吗?为什么ActiveAdmin不把它们的类文件改成前缀,比如\u active-admin-
,这样它们就不会与其他任何东西冲突了?C库的工作方式。我认为这是ActiveAdmin中的一个bug。
*= require bootstrap
*= require_tree .
*= stub "active_admin"