[英]Ruby on Rails - Sum calculation not working with associations in model
[英]Ruby on rails associations not working
我有两个文件。
clans.rb
class Clans < ActiveRecord::Base
belongs_to :User
end
user.rb
class User < ActiveRecord::Base
has_one :Clan
end
我还有两个mysql表。
氏族: id | 名字| 前缀| 描述| 用户身份
用户: id | 用户名| 密码| 电子邮件| bindcode
clans.user_id是部落领袖的users.id。
在我的代码中,我可以在show.html.erb中使用以下内容,它为我提供了部落名称。
<%= Clans.find(params[:id]).name %>
但我希望能够做到:Clans.find(params [:id])。leader。(用户字段)示例:
<%= Clans.find(params[:id]).leader.username %>
我怎样才能做到这一点?
class Clan < ActiveRecord::Base
belongs_to :leader, :class_name => "User", :foreign_key => "user_id"
end
class User < ActiveRecord::Base
has_one :clan
end
注意类从Clans
变为Clan
,关联从has_one :Clan
变为has_one :clan
有两种方法可以实现这一目标:
belongs_to :leader, :class_name=>"User", :foreign_key=>"user_id"
要么
belongs_to :user
delegate :leader, :to=>:user
注意:后一版本仍然允许你做clan.user
,以及clan.leader
。
belongs_to :user
not belongs_to :User
与Clans
相同的问题
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.