Martin Catty wrote:
> Lily ^_^ a écrit :
>> Bon, voici les deux lignes :
>> 
>> <%= @skillbar.skill1.name %> # Affiche le nom de skill1
>> 
>> <%= @skillbar["skill1"].name %> # N'affiche rien
>> 
>> <%= @skillbar[skill1].name %> # Renvoie "undefined local variable or 
>> method"
> 
> C'est plutôt skillbar.skill1[name]

skillbar.skill1[name] et @skillbar.skill1[name] ne fonctionne pas chez 
moi.

@skillbar est l'objet que je récupère par son id (je suis dans la 
page/action "show")

La classe skillbar prend skill1 comme attribut.
skill1 est un objet. il a pour un attribut "name".

Je chercher à afficher le "name" de skill1, contenu dans skillbar.

MAIS

J'ai besoin d'appeler dynamiquement skill1 car ça pourrait skill0 ou 
skill2.

Peut-être que c'est plus clair avec ces infos.

Mais écrit avec la méthode de Julien ça marche (index = integer):

 <%= @skillbar.send("skill"+index.to_s).name %> et
<%= @skillbar.try("skill"+index.to_s).name %>

> C'est clair qu'il n'y a pas de meilleure casse, mais généralement quand
on plonge dans un nouveau langage c'est mieux d'en suivre les habitudes
; ne serait-ce que pour ceux qui vont maintenir le code.

Je suis d'accord, je fais de mon mieux :)
-- 
Posted via http://www.ruby-forum.com/.

--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse 
[email protected]
-~----------~----~----~----~------~----~------~--~---

Répondre à