У меня есть пользователь, имеющий 8 ассоциаций, например,
#app/models/user.rb
class User < ApplicationRecord
has_many :plans
has_one :account
has_many :goals
has_one :profile
...
end
В большинстве случаев начальные значения ассоциаций одинаковы для каждого пользователя, поэтому для каждой ассоциации has_one у меня есть код, подобный
user.account = Account.new(account_values_hsh)
и для каждого есть много ассоциаций, у меня есть код вроде
user.plans << Plan.new(plan_values_hsh)
Однако это приводит к большому количеству выделения памяти, а также к длительной транзакции. Есть ли более эффективный способ сделать это, возможно, заполнив все ассоциации в памяти, а затем просто выполнив одну операцию сохранения?