2015-02-13 2 views
0

У меня есть метод.Как использовать имя атрибута, сохраненное в переменной?

def method_name(object, field_name_1, field_name_2) 
    var = SomeClass.new(:field => object.field_name_1, :field => object.field_name_2) 
    object.update_attributes(:"#{field_name_1}" => var) 
end 

Когда я пытаюсь получить доступ object.field_name_1 таким образом, что это невозможно, потому что он ищет field_name_1 не это значение (то есть имя поля). В любом случае я могу использовать значение field_name_1 как имя поля?

ответ

0
object.read_attribute(field_name_1.to_sym) 
object.update_attributes(field_name_1.to_sym => var) 

Это должно сработать, но я не уверен, что вы пытаетесь сделать.

Смежные вопросы