我有一个对象数组,类型为 Lab,existing_labs
和不同的 Labs 数组new_labs
。==
我已经为 Lab定义了自己的比较器。
existing_labs
是数据库中已经存在的实验室。
new_labs
是否要保存实验室,基于它们已经存在于数据库中。
现在我正在这样做
new_labs.each do |l|
lab = Lab.new(l)
exists = existing_labs.map{ |existing_lab| lab == existing_lab }
lab.save unless exists.include? true
end
这可行,但如果其中一个或两个数组很大,则可能会很慢。我相信必须有更好的方法来做到这一点!
为清楚起见进行编辑:
我的问题是:有没有一种好方法可以使用我的方法返回所有存在于new_labs
中但不存在于中的 Lab ?existing_labs
==