В Rails, какой самый чистый метод получения имени переменной предпочтительно в виде символа? - PullRequest
0 голосов
/ 08 января 2020

Предположим, у вас есть

[started, stopped].each do |action|
   # puts "#{action} is :started" # or
   # puts "#{action} is :stopped"
end

Получение исходного имени переменной текущего элемента (действия) Я следовал этому ответу { ссылка }, но для этого требуются дополнительные вспомогательные методы

Ответы [ 2 ]

1 голос
/ 08 января 2020

Простое решение, поместите их в ха sh и итерируйте по этому поводу:

{
  started: started,
  stopped: stopped
}.each do |name, value|
  puts "name is {name}, value is #{value}"
end

Организация данных в структуры всегда хорошая идея, но она особенно важна в Ruby, поскольку большая сила Ruby заключается в способности манипулировать структурами и превращать их в другие структуры.

0 голосов
/ 08 января 2020
[:started, :stopped].each do |key|
  action = self.send(key)
  puts "name is #{key}, value is #{action}"
  ...
end

EDIT: искал этот пример, который возвращает переменную meta

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...