Contextual Associations

No doubt this has been covered but I'll be damned if I can find it. References appreciated so I can add to my library.

1. I have 3 tables in my problem: changes, environments, comments 2. changes are many-to-many to environments 3. changes has-many comments

Here's the tricky part:

4. environments has-many comments dependent on the current environment.

Tables:     changes, environments, changes_environments, comments, changes_comments, changes_comments_environments.

How in would one associate comments to an environment according to the change on which it's called through?

i.e.

Here's the tricky part:

4. environments has-many comments dependent on the current environment.

I messed that up. Too much typing. Here's the correct text:

Here's the tricky part:

4. environments has-many comments dependent on the current change into which the environment is loaded.

For example, the join table:     create_table :changes_comments_environments do |t|       t.column :change_id, :integer, :null => false       t.column :comment_id, :integer, :null => false       t.column :environment_id, :integer, :null => false     end

I assume from the lack of response that this is easy and well- documented. I'll keep looking.

No it's neither. But an illustration of your planned schema would help.

It may be that you have a modelling problem or that there is a polymorphic aspect to your core models or your join tables.

In addition you don't state whether you are using HABTM or has_many :through for your many-many associations.

In any case I just figured out HABTM and HM :T 2 weeks ago, and this is at the edge of my ability.

There's a blog out there called 'has many through' google for it or check the Ruby blogrolls. The guy in question is excellent when it comes to explaining or working around the bleeding edge of these kind of questions. You might get better answers there.