Sha256: bf25cc7df4f7f1d71e1b80d0464b0e079557280499fff8738f4e6f782d1ca133

Contents?: true

Size: 1.41 KB

Versions: 2

Compression:

Stored size: 1.41 KB

Contents

# coding: utf-8

class Team
  include Mongoid::Document
  include Mongoid::Timestamps

  belongs_to :division
  field :name, :type => String
  field :logo_url, :type => String
  field :manager, :type => String
  field :ballpark, :type => String
  field :mascot, :type => String
  field :founded, :type => Integer
  field :wins, :type => Integer
  field :losses, :type => Integer
  field :win_percentage, :type => Float
  field :revenue, :type => BigDecimal
  field :color, :type => String
  field :custom_field, :type => String

  has_many :players, :inverse_of => :team, :order => :_id.asc
  has_and_belongs_to_many :fans
  has_many :comments, :as => :commentable

  validates_presence_of :division_id, :only_integer => true
  validates_presence_of :manager
  validates_numericality_of :founded, :only_integer => true
  validates_numericality_of :wins, :only_integer => true
  validates_numericality_of :losses, :only_integer => true
  validates_numericality_of :win_percentage
  validates_numericality_of :revenue, :allow_nil => true
  # needed to force these attributes to :string type
  validates_length_of :logo_url, :maximum => 255
  validates_length_of :manager, :maximum => 100
  validates_length_of :ballpark, :maximum => 100
  validates_length_of :mascot, :maximum => 100

  def player_names_truncated
    players.map{|p| p.name}.join(", ")[0..32]
  end

  def color_enum
    ['white', 'black', 'red', 'green', 'blu<e>é']
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rails_admin-0.6.0 spec/dummy_app/app/mongoid/team.rb
rails_admin-0.5.0 spec/dummy_app/app/mongoid/team.rb