Da du siger, fungerer den genererede SQL, når du direkte påkalder den, ligger problemets rod et sted i processen med at kortlægge de returnerede data tilbage til Objects. Selvom dit setup ser fint ud, virker det ret ustandardiseret, så jeg ville prøve at give skinner mere antydninger til, hvordan foreningerne hører sammen.
Til at starte med bør du indstille en source
for din through
relation (dokumenter) :
has_many :inventories, through: :content_accesses, source: :inventory
Hvis det stadig ikke giver rails det rigtige fingerpeg, kan du prøve at indstille inverse_of
, foreign_key
, primary_key
og endda class_name
på den anden side belongs_to
og has_many
foreninger, for at give skinner de nødvendige hints. Det er svært at sige, hvad der kan hjælpe, men i ikke-standardopsætninger oplever du nogle gange visse problemer med automatisk udledte navne.