更改 Rails 关联集合中元素的顺序
如果我通过 Rails 中的“具有并属于许多”关联拥有一个对象集合(例如相册“夏日照片”有一个照片集合),我如何可以任意更改该集合中元素的顺序?例如,有一个默认索引会产生@album.images[0]或.first。我将如何更改集合,以便该集合中的另一个给定图像拥有第一个位置?我想我可以从集合中删除所有以前的项目,然后将它们全部添加回来,但这似乎很麻烦,而且不确定它是否真的有效。
If I have a collection of objects through a 'has and belongs to many' association in Rails (e.g. the album 'summer photos' has a collection of photos), how can I arbitrarily change the order of the elements in that collection? For example, there is a default index that would yield @album.images[0] or .first. how would I go about changing the collection, so that a another given image in that collection has the first spot? I think I can remove all the previous items from the collection, and then add them all back on, but that seems cumbersome, and not sure it really works even.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
acts_as_list 是执行此操作的标准方法。
acts_as_list is the standard way to do this.