Problem with current_page? & request.url.

27 views
Skip to first unread message

Diego Algorta

unread,
Mar 13, 2015, 6:22:01 PM3/13/15
to rubyonra...@googlegroups.com
Hi everyone.

(Rails 4.1.x)

I'm trying to add a css class in a view but only if current_page?(courses_path)  #=> true. The problem I'm having is that that is never returning true even if (according to the docs) it should.

I created a gist with a short debugging session where I think the problem gets shown really clear: https://gist.github.com/oboxodo/602e18250e6af77bc4d8

In summary, I think something's going wrong with rails/rack's request parsing and SCRIPT_NAME + PATH_INFO variables where the initial slash in "/courses" is not being processed. but it's clearer if you look at the gist.

Anyone having a similar issue?

Thanks!
Diego

Dmitry Shvetsov

unread,
Mar 14, 2015, 2:22:09 AM3/14/15
to rubyonra...@googlegroups.com
Hi,
What is in your rake routes output? Do you have /courses route?
--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-ta...@googlegroups.com.
To post to this group, send email to rubyonra...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/de113a14-abb3-43da-a17b-e96e36a87fa4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Vivek Sampara

unread,
Mar 14, 2015, 5:05:38 AM3/14/15
to rubyonra...@googlegroups.com
current_page?(controller: params[:controller], action: params[:action]) is not a recommended way to check as params[:controller] and params[:action] are created during the action dispatch flow. 

what is the output for this  ?

current_page?(controller: 'courses', action: 'index')

Reply all
Reply to author
Forward
0 new messages