Tôi đang đấu tranh với lỗi trong đối tượng và không chắc chắn ở tất cả các nơi là vấn đề.Rails ActiveRecord: PG :: Lỗi: LRI: tham chiếu cột "created_at" là mơ hồ
Đây là cách các mô hình trông giống như:
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
Đây là truy vấn:
@cars = Car.all(:joins => :car_colors, :conditions => { :car_colors => {:color_id => params[:id_number]}}, :order => "cars.created_at DESC")
Và đầu ra lỗi:
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
Các truy vấn SQL được tạo ra (dưới thông báo lỗi) có vẻ ổn, nhưng điều gì gây ra thông báo lỗi?
Cảm ơn bạn trước.
đang bạn chắc chắn không có gì thiếu từ truy vấn bạn đã đăng? Không có điều kiện trên các hiệp hội hay bất cứ điều gì? Một cái gì đó đang áp dụng một điều kiện ngày nhưng không có gì trong truy vấn nên làm điều đó. – Matt
Vâng, tôi hoàn toàn chắc chắn. Đó là lý do tại sao các lỗi rất lạ. – user984621