¿Estoy queriendo un método llamado same_url? eso devolverá verdadero si las URL aprobadas son iguales. Las URL aprobadas pueden ser hash de opciones de parámetros o cadenas.¿Cuál es la mejor manera en Rails para determinar si dos (o más) URL dadas (como cadenas o opciones de hash) son iguales?
same_url?({:controller => :foo, :action => :bar}, "http://www.example.com/foo/bar") # => true
El Marco rieles ayudante current_page? parece un buen punto de partida, pero me gustaría pasar en un número arbitrario de direcciones URL.
Como un beneficio adicional Sería bueno si un hash de parametros para excluir de la comparación podría ser aprobada en Así que una llamada al método podría ser:.
same_url?(projects_path(:page => 2), "projects?page=3", :excluding => :page) # => true
Me doy cuenta en su ejemplo que tiene una url de cadena que se pasa, pero aún espera que el parámetro de página termine excluido. Analizaría esto en un hash usando el módulo Routing, y solo trabajaría con hash. – kch