延迟加载:当外键的名称与模型名称不同时,如何进行Model.include(:name)?

时间:2013-02-12 22:47:21

标签: ruby ruby-on-rails-3

我想延迟将用户加载到Active Record中的Target对象中,如下所示:

Target.include(:用户)

但问题是user_id外键名为'targeted_user_id',而不是'user_id'。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:1)

class Target < ActiveRecord::Base
    belongs_to :user, foreign_key: 'targeted_user_id'
end

Target.includes(:user)

良好的解释here