Мне было интересно, когда вы создаете объект, вы часто можете установить несколько атрибутов в одной строке, например:
@object = Model.new(:attr1=>"asdf", :attr2 => 13, :attr3 => "asdfasdfasfd")
Что если я сначала хочу использовать find_or_create_by, а потом изменить другие атрибуты? Как правило, я должен был бы использовать несколько строк, например:
@object = Model.find_or_create_by_attr1_and_attr2 ("asdf", 13)
@ object.attr3 = "asdfasdf"
@ object.attr4 = "asdf"
Есть ли способ установить атрибуты с использованием хеша, аналогично тому, как метод Model.new принимает пары ключ-значение? Я заинтересован в этом, потому что я мог бы установить несколько атрибутов в одной строке, например:
@object = Model.find_or_create_by_attr1_and_attr2("asdf", 13)
@object.some_method(:attr3 => "asdfasdf", :attr4 => "asdfasdf")
Если у кого-то есть идеи, это было бы здорово!