Текущая страница? не работает с маршрутами с необязательными параметрами
Вот маршрут:
get "search(/:search)", to: "posts#index", as: :search
Теперь, если я в /search/somethingsomething
и вид:
- if current_page?(search_path)
= (do something)
тогда что-то не делается. Если я уберу скобки вокруг :search
Однако (т.е. get "search/:search" ...
), тогда это работает. Что дает?
2 ответа
Вы можете использовать это условие
current_page?(controller: 'posts', action: 'index')
когда вы используете search_path
в состоянии он генерируется без дополнительных параметров
Не берите в голову. Решил это, заменив условие на:
- if current_page?("/search/#{params[:search]}")