如何从两个已存在的对象创建新对象?

时间:2017-11-02 12:10:20

标签: ruby-on-rails ruby


我在db

中有下表
create_table "rates", force: :cascade do |t|
t.string "base_currency"
t.string "target_currency"
t.float "value"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end

我有一些费率。 例如:

EUR | USD | 1.16
EUR | CAD | 1.49
EUR | NZD | 1.68

如何创建新对,例如:

USD | CAD | nnn
NZD | CAD | yyy

等等?

我知道如何手动完成:

f = Rate.first
l = Rate.last
n = Rate.new(base_currency:f.target_currency, target_currency:l.target_currency, value: f.value/l.value)

但我不知道如何遍历整个阵列。 感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

通过

解决

product method 它使数组倍增,所以我得到了我需要的所有组合