rails重命名关联

时间:2009-07-23 00:47:19

标签: ruby-on-rails associations

我有两个模型,TreeNode和User。每个用户has_one TreeNode,它是树的根。

class TreeNode
  acts_as_tree
  belongs_to :user
end

class User
  has_one :tree_node
end

我想进行此设置,以便rails将进行关联,以便我可以执行类似

的操作
User.first.tree

而不是

User.first.tree_node

如何做这样的事情?

2 个答案:

答案 0 :(得分:27)

has_one :tree, :class_name => "TreeNode"

请注意,这会假定user_id表中名为tree_nodes的外键。

编辑:如果这不起作用,可能需要指定外键(:foreign_key => :user_id),但我不这么认为。

答案 1 :(得分:3)

显然:class_name已被替换为:source。