/ / Železnice 3 staršie trasy „aktív“ - trasy, majetkové potrubie, aktíva, koľajnice-3-upgrade

Rails 3 staršie "aktívne" trasy - trasy, asset-pipeline, assets, rail-3-upgrade

Ja som v procese aktualizácie z aplikácie Rails 2.3.14 na Rails 3.2.1 Doteraz je jedinou otázkou neschopnosť určiť cesty k našim starým zdrojom aktív.

v config / application.rb:

config.assets.enabled = false

Nasledujúce práce (s nesprávnou cestou):

resources :company_assets, :controller => "assets", :as => :assets

Ale samozrejme, cesta je "/ Company_assets / *".

Akonáhle sa pokúsim urobiť cestu, tak to je "/aktíva/*", trasy sa nepodarí vygenerovať. podľa "nepodarí sa vygenerovať", Mám na mysli beh:

rake routes | grep assets

Nič mi neukazuje.

Tu je príklad ciest, ktoré nedokážu správne vygenerovať:

resources :company_assets, :controller => "assets", :as => :assets, :path => "assets"

# or

resources :assets

Keď sa hádam v konzole Rails, zdá sa, že existujú cesty týkajúce sa aktív, ale zdá sa, že sú ekvivalentné s tým, že zadali:

resource :assets

Namiesto:

resources :assets

(Všimnite si singulárne vs. množné číslo)

Je možné zachovať spätnú kompatibilitu bez toho, aby ste sa starali o existujúce cesty?

odpovede:

3 pre odpoveď č. 1

Áno, je to možné.

Dôvod, prečo sa to deje, je preto, že ozubené kolesá (ktoré obsluhujú potrubie aktív) preberajú trasu / aktíva.

Trasu, ktorú používa Sprockets, môžete zmeniť pridaním do vašej application.rb:

config.assets.prefix     = "/x"

Kde x je nová trasa.

Robím to v jednej z mojich produkčných aplikácií, pretože kancelárske sponky ukladali svoje súbory do / aktív.

Jeden tip na aktualizáciu: skontrolujte nastavenia pipeline vo vašej aktualizovanej aplikácii oproti tým, ktoré sú v poslednú časť sprievodcu potrubím aktív.