我在数据库中有 2 个表:汽车和域。一辆车可以有很多域,一个域可以有很多车。
在我的项目中,三个模型:
class Car < ActiveRecord::Base
has_many :cars_domains
has_many :domains, :through => :cars_domains
...
class Domain < ActiveRecord::Base
has_many :cars_domains
has_many :cars, :through => :cars_domains
...
class CarsDomain < ActiveRecord::Base
belongs_to :car
belongs_to :domain
end
我想看看没有域名的汽车:
@cars = Car.find(:all, :conditions => ['id not in(select car_id from cars_domains where domain_id = ?)', params[:domain_id]])
这是工作,但我认为这非常困难。也许可以做得更简单?