Тъй като казвате, генерираният SQL работи, когато директно го извикате, коренът на проблема се намира някъде в процеса на картографиране на върнатите данни обратно към обекти. Въпреки че настройката ви изглежда добре, изглежда доста нестандартна, така че бих опитал да дам повече на релсите подсказва как асоциациите си съвпадат.
Като начало трябва да зададете source
за вашия through
връзка (документи) :
has_many :inventories, through: :content_accesses, source: :inventory
Ако това все още не дава правилната представа за релсите, можете да опитате да зададете inverse_of
, foreign_key
, primary_key
и дори class_name
на другия belongs_to
и has_many
асоциации, за да дадете на релсите необходимите съвети. Трудно е да се каже какво би могло да помогне, но при нестандартни настройки понякога изпитвате определени проблеми с автоматично изведени имена.