ruby on rails - how create object from query with includes -
platform , platformcategory connected belongs_to has_many
i have such query db
p = platformcategory.where(params[:platform_category_ids]).includes(:platforms) i want utilize each id of platform associated p variable , set new object, this:
p.each { |plat_cat| campaign.create(..., some_id: plat_cat.platform.id) } but platformcategory has_many platforms , here want phone call each block on plat.cat, it's sounds not ruby way.
upd ok when pass array [1,2,3,4], array in params 'nomethoderror: undefined method `joins' array'
are looking this?:
p = platformcategory.where(id: [1,2,3,4]).joins(:platforms).select('platforms.id) and then:
p.each { |plat_cat| campaign.create(..., some_id: plat_cat.id) } update: since find not chain joins method homecoming array(if pass array argument) after query. can avoid such scenario:
p = platformcategory.joins(:platforms).select('platforms.id').find([1,2,3,4]) ruby-on-rails ruby activerecord
No comments:
Post a Comment