Sí, no está en la colección, está en el miembro
collection do
get :somethingelse
end
member do
get :people
end
Pregunta
Tengo problemas para configurar la ruta correcta en mi archivo de rutas. Tengo un controlador para eventos. Dentro del controlador de eventos tengo una acción llamada "People" que se parece un poco a esto:
def people
@people = Event.find_by_sql(["sql that joins three tables to get the data I need;", params[:id]])
end
En mis rutas tengo:
resources :events do
collection do
get :somethingelse
get :people
end
end
Si código duro mis parámetros [: id] antes de mi "find_by_sql" funciona bien cuando visito ".../eventos/personas", sin embargo, si trato de hacer algo como ".../eventos/5/personas" Recibo el error "No coincidentes de ruta [obtenga]/eventos/5/personas ".
Estoy seguro de que me estoy perdiendo algo simple en mi archivo de rutas. ¿Alguien puede proporcionarme la parte que me estoy perdiendo?
Solución
Sí, no está en la colección, está en el miembro
collection do
get :somethingelse
end
member do
get :people
end
Otros consejos
Puedes probar este enfoque:
id = 1
User.find_by_sql(['select * from users where id = ?', id])`