Ответ 1
Вы пробовали:
controller_path
http://api.rubyonrails.org/classes/AbstractController/Base.html#method-i-controller_path
У меня много контроллеров в разных пространствах имен. Метод controller_name возвращает только имя контроллера, например. "статьи". Есть ли вероятность получить полное имя, например "service/articles" (контроллер статей находится в пространстве имен службы)?
Я хочу создать ссылку на действие индекса каждого контроллера через глобально используемый частичный:
<%= link_to controller.display_name, { :controller => controller.controller_name, :action => "index"} %>
Если это частичное изображение отображается в представлении в пространстве имен пользователей, я получаю сообщение об ошибке: у пользователей/статей нет маршрута (это должен быть сервис/статьи).
Вы пробовали:
controller_path
http://api.rubyonrails.org/classes/AbstractController/Base.html#method-i-controller_path
Вместо привязки к контроллеру:: синтаксис действий, вы можете использовать вложенные ресурсы
routes.rb
resources :users do
resources: articles
end
в вашем представлении
= link_to 'Articles', user_article_path(current_user)
Пользователь user_article позаботится о ваших пространствах имен для вас.