Mise à jour d'un attribut dans une métho de

Bonjour,

L’erreur que je décris me paraît très surprenant.

Voilà rapidement mon bout de code

class Resource < ActiveRecord::Base
def pierre
name = ‘monnom’
end
end

Une classe très simple, avec une méthode

Ensuite, je fais :
r=Resource.new
r.pierre
r

Et là j’obtiens name: nil

Alors là je comprends plus rien !
Pourquoi est-ce que la méthode pierre ne met pas à jour mon objet r ?

Merci beaucoup pour votre aide,
Pierre

On 05 Jul 2008, at 15:00, Pierre V. wrote:

Et là j’obtiens name: nil

Alors là je comprends plus rien !
Pourquoi est-ce que la méthode pierre ne met pas à jour mon objet r ?

Au sein de ta méthode pierre, name est un variable locale. Pour
atteindre la méthode accessor “name=”, tu dois écrire : self.name =
‘monnom’ ou pour atteindre la variable d’instance “name”, @name =
‘monnom’.

Bien à toi,

Jean-Baptiste

Jean-Baptiste E.
Belighted.com | Web 2.0 Consulting & Training
Email : [email protected] | Phone: +32 486 377593