I'm thinking about 4 models

   - User
   - Project
   - RecordOwner
   - UserProject -> this is the join table for user and project

You won't need RecordOwner if record_owners is a subset of the users
association.
Give us an example so we can help out with the options you want.

On Mon, Feb 14, 2011 at 8:17 AM, Lille <[email protected]> wrote:

> Hi,
>
> I want to specify relationships between two classes like that
> expressed in the following pseudocode:
>
> class User < ActiveRecord::Base
>   has_many :projects
> end
>
> class Project < ActiveRecord::Base
>
> has_one :primary_record_owner, :<pseudo_option_for_referring_to>=>"User"
>   has_many :record_owners, :<pseudo_option_for_referring_to>=>"User"
>   has_many :users # this refers to User, too
> end
>
> From the above I seek the following kind of results:
>
> @user.projects # returns all projects associated with the user from
> any of the three User associations in Project
> @project.primary_record_owner # returns the User instance
> @project.record_owners # returns the collection of User instances
> @project.users # returns User instances, not necessarily overlapping
> with the other associations
>
> The intent I mean to express is that a Project can have any of three
> levels of relationship with a User, while a User has only one level of
> association with a Project.
>
> I was thinking HABTM, but I don't see how to get my desired
> '@user.projects' result from that.
>
> Any helpful comment would be greatly appreciated.
>
> Thanks,
>
> Lille
>
> --
> You received this message because you are subscribed to the Google Groups
> "Ruby on Rails: Talk" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/rubyonrails-talk?hl=en.
>
>


-- 
-------------------------------------------------------------
visit my blog at http://jimlabs.heroku.com

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to