7

Po RAILS_ENV=production bundle exec rake assets:precompiledropdown przestaje odpowiadać w środowisku programistycznym. Nic się nie dzieje po kliknięciu przycisku. Jednak usunięcie wszystkiego od public/assets zaczyna działać. Działa również idealnie w trybie produkcyjnym (rails s -e production)Rozwijana lista zmian Bootstrap po prekompilacji aktywów

Aplikacja używa twitter bootstrap i active admin. Wygląda na to, że coś się stanie conflicted.

Uwaga tutaj to działa dobrze w inscenizacji na Heroku

Oto przystawki generowanego 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> 

app/assets/stylów/application.css.scss

... 
.... 
*= require_self 
*= require jquery.ui.slider 
*= require_tree . 

aplikacja/zasoby/javascripts/application.js

Jakie są procedury prekompilacji zasobów?

Odpowiedz

0

Jak dowiaduję się, że zwykle nie ma potrzeby wstępnego kompilowania zasobów lokalnie. Zwykle odbywa się to w inscenizacji i produkcji.

Właściwie w inscenizacji na Heroku, otrzymujemy ActionView::Template::Error (active_admin.css isn't precompiled)error. Prekompilujemy zasoby lokalnie, przekazujemy je do zdalnego repo przed wdrożeniem do Heroku, aby je naprawić. To było obejście i przyczyna problemu.

Rozwiązanie otrzymuje this link. Przestrzegaliśmy go, a teraz nie musimy już prekompilować zasobów lokalnie i przechowywać w repozytorium.

4

Wystarczy oczyścić folderu swoje aktywa:

rake assets:clean:all 

Dlaczego tak się dzieje?

Lista rozwijana Bootstrapa jest przeznaczona tylko dla deweloperów, ponieważ zasoby są ładowane dwukrotnie. Raz w formie "prekompilowanej", a drugiej ze względu na środowisko programistyczne. To powoduje konflikt, a rozwijanie nie działa.

To dlatego działa na Heroku/Produkcji normalnie, ponieważ ładowane są tylko wstępnie skompilowane zasoby.

+0

Działa jak urok! Dziękuję Ci – Neoecos

Powiązane problemy