我有用户:
has_many :user_artists
has_many :artists, :through => :user_artists
用户艺术家:
belongs_to :artist
belongs_to :user
delegate :itunes_id, :to => :artist
艺术家
has_many :user_artists
has_many :users, :through => :user_artists
attr_accessible :itunes_id
我想根据该艺术家的给定 itunes_id 销毁给定用户的 user_artists。我可以做到User.first.user_artists.select {|ua| ua.itunes_id == 200823564}
,但有没有办法只使用 ActiveRecord 来做到这一点?或者这是最有效的方法?
我在想类似的事情,User.first.user_artists.where( :artist => {:itunes_id => 1000}).destroy_all
但是 SQL 抱怨 user_artists 上没有 Artist.itunes_id 列。