Sha256: aaa63b9a6eca3593840c7ab358995a928cfe567ceb0dc78477d77606c3da76a3

Contents?: true

Size: 664 Bytes

Versions: 2

Compression:

Stored size: 664 Bytes

Contents

class Player < ActiveRecord::Base
  belongs_to :team, inverse_of: :players
  has_one :draft, dependent: :destroy
  has_many :comments, as: :commentable

  validates_presence_of(:name)
  validates_numericality_of(:number, only_integer: true)
  validates_uniqueness_of(:number, scope: :team_id, message: 'There is already a player with that number on this team')
  validates_each :name do |record, _attr, value|
    record.errors.add(:base, 'Player is cheating') if value.to_s =~ /on steroids/
  end

  before_destroy :destroy_hook

  def destroy_hook; end

  def draft_id
    draft.try :id
  end

  def draft_id=(id)
    self.draft = Draft.find_by_id(id)
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rails_admin-0.6.4 spec/dummy_app/app/active_record/player.rb
rails_admin-0.6.3 spec/dummy_app/app/active_record/player.rb