Ruby on rails 4 从ActiveResource::集合关系中删除元素
我在文件服务中有多对多关系(HABTM):Ruby on rails 4 从ActiveResource::集合关系中删除元素,ruby-on-rails-4,soa,activeresource,Ruby On Rails 4,Soa,Activeresource,我在文件服务中有多对多关系(HABTM): class Album < ActiveRecord::Base has_and_belongs_to_many :media, join_table: 'albums_media' end class Medium < ActiveRecord::Base has_and_belongs_to_many :albums, join_table: 'albums_media' end 我希望能够从给定的相册中删除特定的媒体,但A
class Album < ActiveRecord::Base
has_and_belongs_to_many :media, join_table: 'albums_media'
end
class Medium < ActiveRecord::Base
has_and_belongs_to_many :albums, join_table: 'albums_media'
end
我希望能够从给定的相册
中删除特定的媒体
,但ActiveResource实际上并不直接支持这一点
# not supported...
medium.albums.destroy(...)
我不想使用has\u many:through
,因为除了做这种事情之外,我不需要直接管理连接
非常感谢您提供的任何见解。仅供参考:我最终在文件服务本身中添加了额外的“加入”资源,然后将相应的ActiveResource类添加到gem中。现在,我们可以简单地使用API直接管理连接 这是比我想做的更多的工作,但AR是适当的精简重量,不支持多对多的关系。关键是,这是可以做到的
album = Album.create(...)
medium = Medium.create(album_ids: [album.id])
# not supported...
medium.albums.destroy(...)