在Rails 3中更新整个表的最佳方法是什么?

时间:2011-12-04 16:42:47

标签: ruby-on-rails ruby-on-rails-3

根据我想要的哈希内容:

  • 使用表中尚未包含的元素创建新记录
  • 删除不在哈希中的记录
  • 更新commom中记录的属性

我正在尝试将我的表与哈希(这是我从FLickr API获得的数据)同步

照片表格如下:

#  id              :integer         not null, primary key
#  photoset_id     :integer
#  flickr_photo_id :integer
#  url             :string(255) 
#  private         :boolean         default(FALSE)
#  created_at      :datetime
#  updated_at      :datetime

哈希具有相同的属性:

:flickr_photo_id, :url and :private

我现在正在做的事情:

photoset.photo.destroy_all
photoset.photo.build(flickr_photos)
photoset.save! 

这是不是删除并重建整个表格的更好方法吗?

1 个答案:

答案 0 :(得分:0)

只是把东西扔掉袖口 - 也许你可以做一个合并,然后对flickr列表中不存在的任何元素进行破坏。这听起来更像是“我如何处理数组/哈希问题”。