我需要关于Rails ActiveRecord连接的帮助-我知道如何在SQL中实现它
我有两个表需要连接,但两个表中的user_id列值不同。所以我想这样做: 在我的控制器中,我需要关于Rails ActiveRecord连接的帮助-我知道如何在SQL中实现它,sql,ruby-on-rails,activerecord,join,Sql,Ruby On Rails,Activerecord,Join,我有两个表需要连接,但两个表中的user_id列值不同。所以我想这样做: 在我的控制器中,4将替换为当前用户id select*from sites join pickups on sites.id=pickups.site\u id where sites.user\u id='4' 但是使用ActiveRecord查找 以下是我的联想: class Site < ActiveRecord::Base belongs_to :user has_many :pickups cla
4
将替换为当前用户id
select*from sites join pickups on sites.id=pickups.site\u id where sites.user\u id='4'
但是使用ActiveRecord查找
以下是我的联想:
class Site < ActiveRecord::Base
belongs_to :user
has_many :pickups
class Pickup < ActiveRecord::Base
belongs_to :site
belongs_to :user
class User < ActiveRecord::Base
has_one :profile
has_many :pickups
has_many :sites
类站点
提前谢谢 试试这个:
sites = current_user.sites.find(:all, :include => [:pickup])
如果将其添加到用户模型中:
has_many :site_pickups, :through => :sites, :source => :pickups
你能行
current_user.site_pickups
您说过“两个表中的user_id列值不相同”。您的表的模式是什么?列名是什么?我的意思是拾取可以与不同于站点的用户关联。在我的模型中,我必须做:
有很多:站点拾取,:通过=>:站点,:source=>:拾取