[ruby-it] Variabili d'istanza non visibili
Simone Carletti
weppos a gmail.com
Mar 25 Ago 2009 10:31:00 CEST
Le variabili d'istanza sono accessibili ovunque all'interno
dell'applicazione indipendentemente dal fatto che siano state o meno
dichiarate nell'initializer.
Il tuo codice infatti funziona. Prova ad eseguire questo
class LoginMock
def initialize(session)
@session = session
@user = nil
end
def log_in(user)
if user
@user = user
end
end
def give_me_the_user
@user
end
end
c = LoginMock.new("I am a session")
c.log_in("weppos")
puts c.give_me_the_user
Il problema è senza dubbio altrove. Tieni in considerazione che se apri una
pagina A (login) e B (verifica), anche se hai una variabile d'istanza in A
non sarà visibile in B perché sono due esecuzioni differenti.
Per trasportarti il valore devi ricorrere all'uso di una sessione o di un
cookie.
-- Simone
2009/8/25 Nicola Nico <theonenkl a gmail.com>
>
> def initialize(session)
> @session = session
> @user = nil
> end
>
> def log_in(user)
> if user
> @user = user
> ...
> end
> end
--
Simone Carletti
Site & Blog: http://www.simonecarletti.com
Email: weppos a weppos.net
LinkedIn: http://linkedin.com/in/weppos
Nick: weppos | Skype: weppos
More information about the Ml
mailing list