# Weird relationship thing

**URL:** <https://www.ruby-forum.com/t/weird-relationship-thing/100964>\
**Category:** Rails\
**Created:** [August 2, 2006, 3:59am UTC](https://www.ruby-forum.com/t/weird-relationship-thing/100964 "2006-08-02T03:59:00Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![petewilliams](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/7ba0ec/32.png) [@petewilliams](https://www.ruby-forum.com/u/petewilliams)\
**Post date:** [August 2, 2006, 3:59am UTC](https://www.ruby-forum.com/t/weird-relationship-thing/100964/1 "2006-08-02T03:59:00Z")

</div>

* * *

Rails mailing list  
removed\_email\_address@domain.invalid  
[http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)

---

<div class="post-metadata">

**Author:** ![petewilliams](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/7ba0ec/32.png) [@petewilliams](https://www.ruby-forum.com/u/petewilliams)\
**Post date:** [August 3, 2006, 12:13pm UTC](https://www.ruby-forum.com/t/weird-relationship-thing/100964/2 "2006-08-03T12:13:40Z")

</div>

Pete W. wrote:

> adding a method to the House class that I pass a user id into?
> 
> * * *
> 
> * * *
> 
> Rails mailing list  
> removed\_email\_address@domain.invalid  
> [http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)

Thinking about the relationships (rather than representing in AR), I  
think there is a difference between owning a house (which is also a  
container, as may be an office, or storage place, also the user may own  
more than one house), and movable objects (possessions). I would think  
the relationship between these containers (ugly name!) and possessions  
is one of location, i.e. a container has\_one location, a possession  
has\_one location, a location belongs\_to a possession and belongs\_to a  
location, and a container has\_many possessions through location.

Of course you could model the container-possession relationship as a  
has\_and\_belongs\_to\_many, but I suspect you will want to add attributes  
to the relationship, such as when it began (i.e. when it was moved  
there), and when it ended.

HTH

---

<div class="post-metadata">

**Author:** ![petewilliams](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/7ba0ec/32.png) [@petewilliams](https://www.ruby-forum.com/u/petewilliams)\
**Post date:** [August 3, 2006, 2:23pm UTC](https://www.ruby-forum.com/t/weird-relationship-thing/100964/3 "2006-08-03T14:23:27Z")

</div>

* * *

Rails mailing list  
removed\_email\_address@domain.invalid  
[http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)
