Velocipede's User, Sales, and Bike Inventory Web App
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

18 lines
422 B

class TeamMembership < ActiveRecord::Base
belongs_to :team
belongs_to :user
validates :user, :presence => true
validates :team, :presence => true
validates :user_id, :uniqueness => { :scope => :team_id }
validate :no_captains_allowed
private
def no_captains_allowed
if user.present? && team.present? && team.captain == user
errors.add(:user, "Captain is already a member.")
end
end
end