如何做多个has_one模型关联?

时间:2015-06-25 03:42:27

标签: ruby-on-rails ruby

我试图在视图中访问用户角色的标题。我希望能够做到user.user_details.role.title

user.user_details.role向我提供错误undefined method角色'对于#`

我的协会有什么不对,这不起作用?

class User < ActiveRecord::Base
  has_one :user_details, :dependent => :destroy
  has_one :role, :through => :user_details
end

class UserDetails < ActiveRecord::Base
  belongs_to :user
  has_one :role
end

class Role < ActiveRecord::Base
  belongs_to :user_details
end

1 个答案:

答案 0 :(得分:0)

您对error: libarclite_macosx.a(arclite.o) failed to load objfile for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_macosx.a Welcome to Apple Swift version 2.0 (700.0.42.1 700.0.53). Type :help for assistance. 模型的命名错误。将其更改为UserDetails&amp;也在协会更新。

然后您就可以UserDetail访问该角色了。因为对于user.user_detail.role关联,您必须使用单数名称。

has_one