Domanda

Ho problemi con il percorso corretto impostato nel mio file percorsi. Ho un controller per gli eventi. All'interno del controller degli eventi ho un'azione chiamata "People" che sembra un po 'così:

def people
    @people = Event.find_by_sql(["sql that joins three tables to get the data I need;", params[:id]])
end

Nei miei percorsi ho:

resources :events do
    collection do
      get :somethingelse
      get :people
    end
end

Se ho definito i miei params [: id] prima del mio "find_by_sql" funziona bene quando visito ".../eventi/persone", tuttavia, se provo a fare qualcosa del tipo ".../eventi/5/persone" Ottengo l'errore "Nessun percorso [Get]/Events/5/People ".

Sono sicuro che mi manca qualcosa di semplice nel mio file percorsi. Qualcuno può fornirmi la parte che mi manca?

È stato utile?

Soluzione

Sì, non è in raccolta, è sul membro

collection do
  get :somethingelse
end
member do
  get :people
end

Altri suggerimenti

Puoi provare questo approccio:

id = 1
User.find_by_sql(['select * from users where id = ?', id])`
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top