4
วิธีการแสดงระเบียนที่ไม่ซ้ำกันจาก has_many ผ่านความสัมพันธ์?
ฉันสงสัยว่าวิธีใดเป็นวิธีที่ดีที่สุดในการแสดงบันทึกเฉพาะจาก has_many ผ่านความสัมพันธ์ใน Rails3 ฉันมีสามรุ่น: class User < ActiveRecord::Base has_many :orders has_many :products, :through => :orders end class Products < ActiveRecord::Base has_many :orders has_many :users, :through => :orders end class Order < ActiveRecord::Base belongs_to :user, :counter_cache => true belongs_to :product, :counter_cache => true end สมมติว่าฉันต้องการแสดงรายการผลิตภัณฑ์ทั้งหมดที่ลูกค้าสั่งซื้อในหน้าแสดงของพวกเขา พวกเขาอาจสั่งซื้อสินค้าบางรายการหลายครั้งดังนั้นฉันจึงใช้ counter_cache เพื่อแสดงตามลำดับจากมากไปหาน้อยโดยพิจารณาจากจำนวนคำสั่งซื้อ แต่ถ้าพวกเขาสั่งซื้อผลิตภัณฑ์หลายครั้งฉันต้องตรวจสอบให้แน่ใจว่าผลิตภัณฑ์แต่ละรายการอยู่ในรายการเพียงครั้งเดียว @products …