1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00
rails--rails/activerecord/test/models/contract.rb

39 lines
759 B
Ruby
Raw Normal View History

# frozen_string_literal: true
class Contract < ActiveRecord::Base
belongs_to :company
belongs_to :developer, primary_key: :id
2016-08-06 13:37:57 -04:00
belongs_to :firm, foreign_key: "company_id"
2011-05-31 06:08:11 -04:00
attribute :metadata, :json
before_save :hi, :update_metadata
2011-05-31 06:08:11 -04:00
after_save :bye
attr_accessor :hi_count, :bye_count
def hi
@hi_count ||= 0
@hi_count += 1
end
def bye
@bye_count ||= 0
@bye_count += 1
end
def update_metadata
self.metadata = { company_id: company_id, developer_id: developer_id }
end
end
class NewContract < Contract
validates :company_id, presence: true
end
class SpecialContract < ActiveRecord::Base
self.table_name = "contracts"
belongs_to :company
belongs_to :special_developer, foreign_key: "developer_id"
end