[QUOTE]Originariamente inviato da enricomail
secondo me tu non leggi quello che scrivo con attenzione.
[QUOTE]
Ti assicuro di aver letto e riletto più volte.
Il codice lo postato prima,è sopra e ho messo pure i due casi.
E' il codice intero?
codice:
class Author < ActiveRecord::Base
validates_presence_of :name, :password
validates_uniqueness_of :name
validates_confirmation_of :password
has_many :messages
end # finisce la definizione della classe
def valid?
saved=Author.find_by_name(name)
return (saved and (password == saved.password))
end
# COSì FACENDO NON MI FUNZIONA IL METODO "LOGIN"
Sì dà il caso che al primo end la definizione della classe finisce (come ho già detto), quindi valid? è esterno ad essa. Per forza non ti funziona il metodo login (che non hai incollato, tra l'altro).
codice:
#SECONDO CASO
class Author < ActiveRecord::Base
validates_presence_of :name, :password
validates_uniqueness_of :name
validates_confirmation_of :password
has_many :messages
def valid?
saved=Author.find_by_name(name)
return (saved and (password == saved.password))
end
end
Qui è interno alla classe.
Ma come fai a dire che non funziona il metodo "new", dato che non ci sono chiamate a "valid?" ? Alla cui domanda (che ho già fatto), tu hai risposto
anke il metodo se io creo e salvo un oggetto lui mi entra cmq nella classe author e m và a controllare tutti i metodi compreso quello "valid",ke nn dovrebbe considerare ma lo fa
Con questo dici che facendo "Author.new" il metodo new non ti funziona; in che senso? ottieni errore? non ti crea l'oggetto?
Per quanto riguarda il sorgente,mi sono spiegato male hai ragione,volevo chiederti come modificarlo utilizzando la "ruby console" inclusa nel pacchetto instant rails che voi,nella guida,avete consigliato di scaricarmi.
Voi chi? Io non centro niente. 
Lo so che si può fare con l'editor,ma sono dei file ".rb" e credo che sia meglio modificarli con la console,se si può.
Coooosa? Modificare i sorgenti dalla console? Di solito si programma scrivendo in un editor.
"ruby script/console" non serve per modificare alcun che... carica una parte della tua applicazione rails per consentire di fare delle prove ed eseguire test con il codice scritto. Certamente, avendo a disposizione le classi di modello, puoi inserire record nel database tramite la creazione di nuovi oggetti (cioè record secondo la mappatura ORM) e la chiamata a save() (o direttamente con ClasseModello.create() ).
:master: