Domanda su metodo find_by_sql

Ciao…

volevo sapere se qualcuno poteva spiegarmi al volo come utilizzare il
metodo find_by_sql() in relazione alla vista…cioè…
una volta effettuata la query dove devo mettere il risultato? e
soprattuto cosa ritorna?
ho già provato ma nn funziona…dice che l’oggetto è vuoto…

l’errore è nella vista index
NoMethodError in Blog#index

Showing blog/index.html.erb where line # raised:

You have a nil object when you didn’t expect it!
You might have expected an instance of Array.
The error occurred while evaluating nil.each

fatemi sapere…(almeno questa volta)…

On Fri, Sep 12, 2008 at 11:17 AM, Gabriele P. [email protected]
wrote:

Ciao…

volevo sapere se qualcuno poteva spiegarmi al volo come utilizzare il
metodo find_by_sql() in relazione alla vista…cioè…

La documentazione del metodo è disponibile qui:
http://apidock.com/rails/ActiveRecord/Base/find_by_sql/class

una volta effettuata la query dove devo mettere il risultato? e
soprattuto cosa ritorna?

La query restituisce un array di istanze del modello su cui invochi il
metodo. Se sai eseguendo Post.find_by_sql(“…”) questo ritorna un
array di
post. Se la query recupera valori per colonne che non appartengono alla
tabella corrispondente al modello, questi verranno comunque aggiunti
alle
instanze del modello come attributi.

You have a nil object when you didn’t expect it!
You might have expected an instance of Array.
The error occurred while evaluating nil.each

Devi assegnare il risultato di find_by_sql a una variabile di istanza
nella
definizione dell’azione index, per poi poterla recuperare nella View.

Ciao,
Antonio

http://antoniocangiano.com - Zen and the Art of Programming
http://belifesavvy.com - Be life savvy: Life’s missing manual
http://stacktrace.it - Aperiodico di resistenza informatica
Currently writing “Ruby on Rails for Microsoft Developers” for Wrox.