资产预编译后,Twitter Bootstrap Dropdown中断

Ami*_*tel 6 jquery ruby-on-rails ruby-on-rails-3 activeadmin twitter-bootstrap

RAILS_ENV=production bundle exec rake assets:precompile下拉成为开发环境反应迟钝.点击按钮没有任何反应.然而,从public/assets开始工作中删除一切.它也适用于生产模式(rails s -e production)

该应用程序使用twitter bootstrap主动管理员.看起来有些事情变得矛盾了.

请注意,它在Heroku上的分段工作正常

这是生成的html的快照

<li id="organization-selector" class="dropdown">
    <a href="/" data-toggle="dropdown" data-target="#organization-selector" class="dropdown-toggle">
      RedKivi
      <b class="caret"></b>
    </a>
    <ul class="dropdown-menu">
      <li>
        <a href="/organizations/1">RedKivi</a>
      </li>
      <li>
        <a href="/organizations/2">BoTree</a>
      </li>                  
      <li class="divider"></li>
      <li>
        <a href="/organizations/new">New organization</a>
      </li>
    </ul>
</li>
Run Code Online (Sandbox Code Playgroud)

应用程序/资产/样式表/ application.css.scss

...
....
 *= require_self
 *= require jquery.ui.slider
 *= require_tree .
Run Code Online (Sandbox Code Playgroud)

应用程序/资产/ JavaScript的/ application.js中

//= require jquery
//= require jquery_ujs
//= require jquery.ui.slider
//= require bootstrap
//= require_tree .
Run Code Online (Sandbox Code Playgroud)

预编译资产的做法是什么?

Ami*_*tel 0

据我所知,通常您不需要在本地预编译资产。它通常在舞台和制作中完成。

实际上,在 Heroku 上的暂存过程中,我们遇到了ActionView::Template::Error (active_admin.css isn't precompiled) 错误。因此,我们在本地预编译资产,推送到远程存储库,然后部署到 Heroku 来修复它。这是解决方法和问题的原因。

此链接给出了解决方案。我们已经遵循了它,现在我们不再需要在本地预编译资产并保留在回购中。