Tag: 自引用

双向自引用关联

以Ryan Bates的asciicast为例: http ://asciicasts.com/episodes/163-self-referential-association 他以两个User用户结束 :朋友 :inverse_friends 鉴于用户不关心是谁煽动友谊,你会想要一个简单的用户关联 :朋友 这包括两种关系。 即,由用户发起的关系以及由用户的朋友发起的关系。 那么如何实现这种双向自引用关联呢? 更新 – Josh Susser在此发表了一篇文章: http : //blog.hasmanythrough.com/2006/4/21/self-referential-through 然而,它仍然讨论has_many:sources和has_many:sink真的应该有一个has_many:包含源和接收器的节点。

has_many:通过多个has_one关系?

我正在为我们的铁路教堂写一个导师计划(我仍然很喜欢铁路)。 我需要对此进行建模.. contact has_one :father, :class_name => “Contact” has_one :mother, :class_name => “Contact” has_many :children, :class_name => “Contact” has_many :siblings, :through , :source => :children 所以基本上一个对象“兄弟姐妹”需要映射父亲和母亲的所有孩子,不包括对象本身。 这可能吗? 谢谢 丹尼尔

解释为局部变量会覆盖方法名称吗?

正如在这个问题中 ,当未定义的局部变量在其自己的赋值中使用时,它将被计算为nil 。 x = x # => nil 但是当局部变量的名称与现有方法名称冲突时,它更棘手。 为什么下面的最后一个例子返回nil ? {}.instance_eval{a = keys} # => [] {}.instance_eval{keys = self.keys} # => [] {}.instance_eval{keys = keys} # => nil