Secara umum, bagaimana saya bisa mendapatkan referensi ke objek yang namanya saya miliki dalam sebuah string?
Lebih khusus lagi, saya memiliki daftar nama parameter (variabel anggota - dibangun secara dinamis sehingga saya tidak dapat merujuknya secara langsung).
Setiap parameter adalah objek yang juga memiliki from_s
metode.
Saya ingin melakukan sesuatu seperti berikut (yang tentu saja tidak berhasil ...):
define_method(:from_s) do | arg |
@ordered_parameter_names.each do | param |
instance_eval "field_ref = @#{param}"
field_ref.from_s(param)
end
end
sumber
Untuk mendapatkan variabel instan dari nama variabel instan lakukan:
Ini akan mengembalikan nilai variabel contoh
@paramName
sumber
:attr_reader varname
sehingga Anda dapat mengakses variabel dengan cara yang lebih bersih dan tidak bertele-tele.