Текущая страница? внутри контроллера

Есть ли простой способ использовать что-то вроде current_page?метод из ActionView::Helpers::UrlHelper внутри контроллера?

У меня есть маршрутизация, как:

resources :addresses
resources :mailing_addresses, :controller => 'addresses'

И я хотел бы сделать проверку в моем контроллере, который будет выглядеть следующим образом:

class AddressesController

  def index
    if current_page?(live_addresses_path)
       # ... logic goes here
    elsif current_page?(addresses_path)
       # ... logic goes here
    end
  end

end

Какой самый простой способ достичь этого?

1 ответ

Решение

В отличие от многих других вспомогательных методов, UrlHelper не входит в ваши контроллеры. Итак, если вы хотите использовать его в своем контроллере, вы можете просто включить его и использовать:

class AddressesController

  include ActionView::Helpers::UrlHelper

  def index
    if current_page?(live_addresses_path)
       # ... logic goes here
    elsif current_page?(addresses_path)
       # ... logic goes here
    end
  end

end
Другие вопросы по тегам