Ruby on rails 动态更新特定的rails属性
我有一个常量hashRuby on rails 动态更新特定的rails属性,ruby-on-rails,ruby,ruby-on-rails-4,hash,nomethoderror,Ruby On Rails,Ruby,Ruby On Rails 4,Hash,Nomethoderror,我有一个常量hashp\u FACT\u MAP和前一个hashproduct\u参数[:product\u factors]的密钥数组。在P\u FACT\u MAP中,所有值都映射到另一个值或一个值数组,这些值是ProductFactor表的属性名称 P_FACT_MAP = { :x => %w[something] :y => %w[something2, something] :z => %w[something 3, something1] ...
p\u FACT\u MAP
和前一个hashproduct\u参数[:product\u factors]
的密钥数组。在P\u FACT\u MAP
中,所有值都映射到另一个值或一个值数组,这些值是ProductFactor
表的属性名称
P_FACT_MAP = {
:x => %w[something]
:y => %w[something2, something]
:z => %w[something 3, something1]
...
...
}
我正在尝试通过执行以下操作来更新动态属性值:
ProductFactor.v << product_params[:p_id]
ProductFactor.v我认为这一行应该是
ProductFactor::P_FACT_MAP.collect.do |k, v|
替换为
ProductFactor::P_FACT_MAP.each do |k, v|
'v'
不是ProductFactor
类的方法。如果您试图使用k,v
中的变量v
,则将ProductFactor.v
替换为ProductFactor.send(v)
ProductFactor::P_FACT_MAP.collect.do |k, v|
ProductFactor::P_FACT_MAP.each do |k, v|