У меня есть массив строк:Как использовать массив строк для создания нескольких объектов ActiveRecord сразу?
days = ["Monday", "Tuesday", "Wednesday"]
Я хотел бы создать день в базе данных имени каждого из них:
days.each do |day|
Day.create(name: day)
end
Это не так мило, однако. В прошлом я был в состоянии очистить списки атрибутов, передавая их в attr_accessor с восклицательным знаком:
attr_accessor *ATTRIBUTES
Я ищу, чтобы быть в состоянии сделать что-то вроде этого:
Day.create(name: *days)
Является ли подобным интерфейсом доступным для ActiveRecord?
Благодарим за это! Отвечает на вопрос точно. Однако мой реальный случай использования требует #find_or_create. Посмотрев документацию на #find_or_create, она не имеет одинаковой функциональности. Вы видите то же самое? –
@DylanRichards Я вижу то же самое. 'find_or_create_by' не будет создавать несколько объектов за один раз. Но вы можете применить другие трюки. –