0

我有这样的类数组:

@types = Type.where("TYP_MOD_ID = ?", params[:mod_id])

我有字段 TYP_KV_FUEL_DES_ID 这是数字....但是我如何通过 map 方法通过方法更改此值?我试过类似的东西:

def get_types_for_mod2
    @types = Type.where("TYP_MOD_ID = ?", params[:mod_id])
    @types.map { |e| e.TYP_KV_FUEL_DES_ID = get_via_designation(e.TYP_KV_FUEL_DES_ID) }
    respond_to do |format|
      format.json { render :json => @types}
    end
  end
def get_via_designation(id)
    designation = Designation.find_by_DES_ID(id)
    destext = DesText.find_by_TEX_ID(designation.DES_TEX_ID)
    destext.TEX_TEXT
  end

那么如何更改 e.TYP_KV_FUEL_DES_ID 的值?

upd1: 我不需要提交任何东西!只是为了 json 我获取数据并更改以查看某些字段!没有分贝!

4

1 回答 1

0
@types = Type.where("TYP_MOD_ID = ?", params[:mod_id]).map do |type| 
  type.TYP_KV_FUEL_DES_ID = get_via_designation(type.TYP_KV_FUEL_DES_ID)
  type
end

在这里,我们将映射查询的结果Type.where("TYP_MOD_ID = ?", params[:mod_id])并将其设置TYP_KV_FUEL_DES_ID为返回get_via_designation

更新:添加地图块将返回“类型”

于 2013-01-28T18:33:21.407 回答