Rails 6 relative_url_ root не работает для развертывания в подкаталоге - PullRequest
3 голосов
/ 03 августа 2020

Я развертываю приложение Rails 6 во вложенной папке (/ dictionnaire-app). Я установил config.relative_url_root = "/dictionnaire-app" в application.rb, а также добавил переменную ENV в соответствии с документацией .

Однако, если ресурсы правильно отрисованы, ссылки, созданные с помощью метода link_to, не обновлено соответствующим образом.

Я прочитал много вопросов, связанных с этой проблемой, и попытался создать область в моем файле routes.rb, следуя этим инструкциям .

Rails.application.routes.draw do
    mount ForestLiana::Engine => '/forest'
    root to: "home#index"

    scope 'dictionnaire-app' do
        resources :words, path: "definition", param: :slug

        post '/search', to: 'words#search'
        get '/recherche', to: 'words#search_page'
        get '/:letter', to: 'words#alphabet_page', param: :letter, as: "alphabetic_page"
    end
    
end

К сожалению приложение выдает ошибку, говоря, что страница не существует для этого URL: https://www.lalanguefrancaise.com/dictionnaire-app/definition/rameal

Однако этот URL работает: https://www.lalanguefrancaise.com/dictionnaire-app/dictionnaire-app/definition/rameal

Есть идеи, как я могу решить эту проблему и отобразить приложение в / dictionnaire-app / *?

Спасибо.

Изменить: эта проблема, похоже, связана с Rails ( см. здесь ). Есть ли способ найти обходной путь?

1 Ответ

0 голосов
/ 06 августа 2020
• 1000 В этом случае вы фактически определяете, существует ли маршрут для приложения динамически. Для правильной работы может потребоваться дополнительная настройка. Предполагая, что вы пытаетесь разрешить /search в качестве маршрута, а не /dictionnaire-app/search (или это вызывает проблему).

Хотя, видя, что это не было опубликовано, неясно, будет ли это так просто исправление.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...