Sono alle prese con l'errore nell'oggetto e non sono affatto sicuro di dove sia il problema.Rails ActiveRecord: PG :: Errore: ERRORE: il riferimento alla colonna "created_at" è ambiguo
Questo è come i modelli assomiglia:
class Car < ActiveRecord::Base
has_many :car_colors
has_many :colors, :through => :car_colors
end
class CarColor < ActiveRecord::Base
belongs_to :color
belongs_to :car
end
class Color < ActiveRecord::Base
has_many :car_colors
has_many :cars, :through => :car_colors
end
Ecco la domanda:
@cars = Car.all(:joins => :car_colors, :conditions => { :car_colors => {:color_id => params[:id_number]}}, :order => "cars.created_at DESC")
E l'uscita di errore:
PG::Error: ERROR: column reference "created_at" is ambiguous
LINE 1: ...d" WHERE "car_colors"."color_id" = 2 AND (created_at...
^
: SELECT "cars".* FROM "cars" INNER JOIN "car_colors" ON "car_colors"."car_id" = "cars"."id" WHERE "car_colors"."color_id" = 2 AND (created_at > '2013-05-03 12:28:36.551058') ORDER BY cars.created_at DESC
La query SQL generato (al di sotto della messaggio di errore) sembra essere a posto, ma cosa causa il messaggio di errore?
Grazie in anticipo.
Sono sei sicuro che non ci sia nulla che manca nella query che hai postato? Nessuna condizione sulle associazioni o qualcosa del genere? Qualcosa sta applicando una condizione di data ma nulla nella query dovrebbe farlo. – Matt
Sì, ne sono completamente sicuro. Ecco perché l'errore è così strano. – user984621