Có vẻ như bạn có lỗi đánh máy trong mã của mình. Kết nối phải là ActiveRecord::Base.connection
nhưng bạn đã viết DealPrize.connection.execute
.
connection = ActiveRecord::Base.connection
connection.execute "sql query"
Hãy thử thay đổi mã của bạn như
after_create :create_deal_prizes
def create_deal_prizes
Deal.transaction do
connection = ActiveRecord::Base.connection
self.prizes_number.times do |i|
connection.execute "INSERT INTO ‘deal_prizes’ (deal_id) values (self.deal.id)"
end
end
end