新手问题 Rails 数据库查询 joins 数据重复的问题

yeyong14 · December 24, 2013 · Last by leomayleomay replied at December 24, 2013 · 3078 hits

Rails 版本 3.2.13

有两个模型 product, productnumbers

#product
class Product < ActiveRecord::Base
  has_many :productnumbers
end

#productnumebr
class Productnumber < ActiveRecord::Base
  attr_accessible :name, :product_id
  belongs_to :product
end

#controller 
class Productscontroller < ApplicationController
#
#
def search
  @products = Product.joins(:productnumbers).where("title like ? or productnumbers.number like ?",'%'+params[:q]+'%', '%'+params[:q]+'%').order("id desc").paginate(page: params[:page], per_page: 12)
end

这样当查询product的时候。就会重复显示多个products。有多少个productnumbers就会显示多个products。 这个要怎么处理,就让显示一次,不要重复显示!

@Rei 谢谢。搞定!

left join 啊.uniq 就太蛋疼了

You need to Sign in before reply, if you don't have an account, please Sign up first.