Gibt es eine Möglichkeit (Meta-Programmierung?), eine Instanzvariable zu lesen / schreiben, wenn wir nur ihren String-Namen kennen?
Zum Beispiel habe ich eine @ my_var-Instanzvariable, die in einer Klassenmethode verwendet wird. Während des Prozesses werde ich eine Zeichenfolge "my_var" haben, die mir sagt, dass ich die @ my_var-Instanzvariable ändern soll.
Natürlich könnte ich eine "if" -Anweisung verwenden, aber ich möchte, dass sie dynamischer ist, da ich möglicherweise viele verschiedene Instanzvariablen in meiner Methode haben werde.
Ich dachte an etwas mit "my_var" .classify und etwas anderem ...
Hat jemand eine Ahnung?
Danke für Ihre Hilfe
Verwenden Sie instance_variable_set
und instance_variable_get
. Beachten Sie, dass die Zeichenfolge das führende @
haben muss:
Tags und Links metaprogramming ruby-on-rails-3.2 instance-variables