Я в процесі оновлення з програми Rails 2.3.14 до Rails 3.2.1 До цих пір єдиною проблемою є нездатність уточнити маршрути до ресурсів наших успадкованих активів.
В config / application.rb:
config.assets.enabled = false
Наступні роботи (з невірним контуром):
resources :company_assets, :controller => "assets", :as => :assets
Але, звичайно, шлях є "/ company_assets / *".
Як тільки я намагаюся прокласти шлях, так це і так "/ assets / *", маршрути не можуть створити. До "не вдається створити", Я маю на увазі біг:
rake routes | grep assets
Мені нічого не видно.
Ось приклад маршрутів, які не можуть правильно генерувати:
resources :company_assets, :controller => "assets", :as => :assets, :path => "assets"
# or
resources :assets
Коли я кочу в консолі Rails, то, мабуть, існують маршрути, пов'язані з активами, але вони здаються еквівалентними вказаним:
resource :assets
Замість:
resources :assets
(Примітка однини чи множини)
Чи можна підтримувати зворотну сумісність тут, не перекручуючи існуючі шляхи?
Відповіді:
3 для відповіді № 1Так, це можливо.
Причина цього полягає в тому, що Sprockets (який обробляє конвеєр активів) приймає маршрут / assets.
Ви можете змінити маршрут, який використовується Sprockets, додавши його до свого application.rb
:
config.assets.prefix = "/x"
Де x - новий маршрут.
Я роблю це в одному з моїх виробничих додатків, тому що скріпка зберігала свої файли в / активах.
Одна підказка для оновлення: перевірте налаштування конвеєра у оновленій програмі порівняно з налаштуваннями останній розділ керівництва трубопроводу активів.