Как смонтировать движок Refinerycms по пользовательскому пути в существующем приложении rails

Я намерен интегрировать CMS нефтепереработки в существующее приложение Rails 3.2.

Я настраиваю механизм перегонки в соответствии с этим руководством http://refinerycms.com/guides/with-an-existing-rails-app.

Я не хочу, чтобы нефтеперерабатывающий завод генерировал все страницы в моем приложении. Только комплект новых.

Итак, в route.rb я изменил следующую строку:

    mount Refinery::Core::Engine, :at =>'/'

to

    mount Refinery::Core::Engine, :at =>'/cms'

В режиме разработки (я все еще проверяю, смогу ли я успешно интегрироваться), когда я запускаю сервер, если я вручную набираю

    localhost:3000/cms

доступна система cms.

Но если я нажимаю на домашнюю ссылку или ссылки на любые другие страницы, созданные нефтеперерабатывающим заводом, я получаю следующую ошибку:

    No route matches [GET] "/"

Это связано с тем, что нефтеперерабатывающий завод настроил его на использование пути /.

Если я вручную ввожу localhost:3000/cms/(имя страницы), страницы отображаются.

Если запись в route.rb является записью по умолчанию

    mount Refinery::Core::Engine, :at =>'/'

Тогда ссылки на страницы, созданные нефтеперерабатывающим заводом, работают нормально, НО существующие страницы, которые были созданы до того, как я интегрировал нефтеперерабатывающий завод, не отображаются, потому что нефтеперерабатывающий завод переопределяет их.

Как настроить пути для ссылок на страницы, созданные нефтеперерабатывающим заводом.


person Ashwin Saval    schedule 20.02.2013    source источник


Ответы (1)


Убедитесь, что вы монтируете Refinery после ваших существующих маршрутов, чтобы он не переопределял их, поскольку они имеют приоритет в зависимости от порядка создания.

person Usman Bashir    schedule 27.02.2013
comment
Спасибо Усман. Работаю над этим уже месяц, и страницы до сих пор не используют маршрут /cms. Попытка монтирования на /. Но что интересно, подстраницы прекрасно монтируются в /cms. - person Ashwin Saval; 22.03.2013
comment
Не могли бы вы опубликовать свой файл маршрутов и как вы генерируете ссылки на страницы Refinery в своих представлениях? - person Usman Bashir; 22.03.2013
comment
Я сейчас не на своем рабочем месте. Но я последовал твоему совету и смонтировал его в конец моего файла route.rb. Ссылки на страницу нефтеперерабатывающего завода генерируются с использованием стандартных функций нефтеперерабатывающего завода. Нет специального способа сделать это. Проблема только в том, как НПЗ генерирует ссылки в админке.. - person Ashwin Saval; 25.03.2013