Ich erhalte folgende Fehlermeldung
Mysql::Fehler: Spalte 'id' in Feldliste ist zweideutig
wenn Sie eine Suchmethode wie diese verwenden: self.prompts.find(:all, :select => 'id')
Die Modelle werden über eine has_many :through-Assoziation aufgerufen, so dass sich MySQL beschwert, dass es mehrere 'id'-Spalten gibt, da alle 3 verwendeten Tabellen eine 'id'-Spalte haben.
Ich habe nachgeschaut und verstehe, was auf der SQL-Seite schief läuft, weiß aber nicht, wie man es in der ActiveRecord-Suchmethode beheben kann, und ich habe kein Vertrauen in meine SQL-Fähigkeiten, um meine eigene SQL-Abfrage zu erstellen. Gibt es eine Möglichkeit, die Find-Methode in etwas, das gut spielen wird zu massieren?
bearbeiten
Hier ist der entsprechende Actor Model Code:
class Actor < ActiveRecord::Base
has_many :acts, :dependent => :destroy
has_many :decisions, :through => :acts, :order => 'created_at'
has_many :prompts, :through => :decisions, :order => 'id'