Ruby on rails 如何在rails中创建postgres触发器?

Ruby on rails 如何在rails中创建postgres触发器?,ruby-on-rails,postgresql,triggers,pg,Ruby On Rails,Postgresql,Triggers,Pg,我有一个表产品(id,名称)和表产品目录(产品id,费率类型,费率)。 当我创建新产品时,我需要为此产品创建三件衣服 如何添加postgres触发器,并执行以下操作: product.create product.product_raitings.create( :rate_type => 0, :rate => 0 ) product.product_raitings.create( :rate_type => 1, :rate => 0 ) product

我有一个表产品(id,名称)和表产品目录(产品id,费率类型,费率)。 当我创建新产品时,我需要为此产品创建三件衣服

如何添加postgres触发器,并执行以下操作:



    product.create
    product.product_raitings.create( :rate_type => 0, :rate => 0 )
    product.product_raitings.create( :rate_type => 1, :rate => 0 )
    product.product_raitings.create( :rate_type => 2, :rate => 0 )
    product.product_raitings.create( :rate_type => 3, :rate => 0 )


请提供帮助。

是否要在数据库中创建触发器,以便插入数据库执行操作

或者你想让rails来做这项工作?然后它将是一个
在创建之后的
回调

也许是这样的

class Product < ActiveRecord::Base
  has_many product_raitings

  after_create :build_default_raitings

 private
 def build_default_raitings
    (0..3).each { |x| self.product_raitings.create(:rate_type => x, :rate => 0) }
 end
end
类产品x,:rate=>0)}
终止
终止
class Product < ActiveRecord::Base
  has_many product_raitings

  after_create :build_default_raitings

 private
 def build_default_raitings
    (0..3).each { |x| self.product_raitings.create(:rate_type => x, :rate => 0) }
 end
end