Skip to content

Instantly share code, notes, and snippets.

@atheken
Created May 1, 2011 00:04
Show Gist options
  • Save atheken/950117 to your computer and use it in GitHub Desktop.
Save atheken/950117 to your computer and use it in GitHub Desktop.
# == Schema Information
# Schema version: 20110430183939
#
# Table name: projects
#
# id :integer not null, primary key
# name :string(255)
# created_at :datetime
# updated_at :datetime
#
class Project < ActiveRecord::Base
has_many :project_memberships, :conditions=>{:relationship_type => "owner" }
has_many :owners, :through =>:project_memberships, :source => :user
end
# == Schema Information
# Schema version: 20110430183939
#
# Table name: project_memberships
#
# id :integer not null, primary key
# project_id :integer
# user_id :integer
# relationship_type :string(255)
# created_at :datetime
# updated_at :datetime
#
class ProjectMembership < ActiveRecord::Base
belongs_to :project
belongs_to :user
end
class User < ActiveRecord::Base
# set up ownership on new projects
has_many :project_memberships
has_many :projects, :through => :project_memberships
#more user junk
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment