在 rails 中创建活动记录,但散列中的特定键除外
create active record in rails except particular key in hash
我搜索了很长时间,但我不知道如何在 rails 中使用散列创建活动记录,散列中的特定键除外。
我现在正在做的是
ingre = {:name => "pepper", :std_qty => 2, :quantity => 20}
quantity = ingre[:quantity]
ingre.delete(:quantity)
ingredient = Ingredient.new(ingre)
ingredient.save!
我的 ingredients
table 中没有 quantity
列,只有 name
和 std_qty
。而且我不想使用 delete 因为它不是很简洁的方法。我知道有一些方法可以在构建对象时避免密钥数量 ingredient
而不是从外部删除。谁能告诉我这是什么
我知道怎么做了。你只需要使用 hash.except(:key_name)
所以上面的代码会变成
ingre = {:name => "pepper", :std_qty => 2, :quantity => 20}
ingredient = Ingredient.new(ingre.except(:quantity))
ingredient.save!
我搜索了很长时间,但我不知道如何在 rails 中使用散列创建活动记录,散列中的特定键除外。
我现在正在做的是
ingre = {:name => "pepper", :std_qty => 2, :quantity => 20}
quantity = ingre[:quantity]
ingre.delete(:quantity)
ingredient = Ingredient.new(ingre)
ingredient.save!
我的 ingredients
table 中没有 quantity
列,只有 name
和 std_qty
。而且我不想使用 delete 因为它不是很简洁的方法。我知道有一些方法可以在构建对象时避免密钥数量 ingredient
而不是从外部删除。谁能告诉我这是什么
我知道怎么做了。你只需要使用 hash.except(:key_name)
所以上面的代码会变成
ingre = {:name => "pepper", :std_qty => 2, :quantity => 20}
ingredient = Ingredient.new(ingre.except(:quantity))
ingredient.save!