У меня есть список дел с 5 задачами, которые хранятся в одной записи.Как использовать переменную для доступа к имени поля объекта ruby в erb? ех. Model.task _ # {variable}
Todo.task_one, Todo.task_two, etc.
То, что я хотел бы сделать, это быть в состоянии петли по полям, как этот
total_tasks = ["one", "two", "three", "four", "five"]
for tasks in total_tasks
Todo.task_#{tasks} = "text here"
end
Однако, это не работает, если я использую eval "Todo.task_#{tasks} = 'text here'"
, который я знаю, это не безопасно. Даже использование eval
на самом деле не является решением, потому что мне нужно сделать это в представлении, используя erb
, поэтому я как бы застрял.
Работало отлично! Благодарю. Кроме того, его можно использовать в обратном порядке: task_text = Task.send ("task _ # {task_number}") – Canuk