我有一个 Rails 查询,例如:
@user = User.find_by_username(params[:search], :include => [:user_similars])
模型:user(has_many:user_similars)、user_similar(belongs_to:user)
user_similars mysql 表有一个“user_id”字段作为外键,但我不希望 :include 加入到此实例中。我想加入另一个名为“user_id_similar”的字段
是否有参数可以更改 :include 的行为方式,以便它可以加入另一个字段?
或者我应该使用 :join 和不同的选项吗?
或者编辑模型方法声明?
谢谢!
最佳答案
谢谢托比!在用户模型用户中我添加了:
has_many :user_similars, :foreign_key => "user_id_similar"
这解决了它。
关于sql - Ruby on Rails : joining two tables on something other than the standard foreign key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2125762/