我试图深入到数组嵌套哈希迭代中的每个值并替换所有值nil
值带有“无”或 0 之类的值。请参阅我的代码,它显然不起作用。在将其传递到 Rails 中的视图进行迭代和渲染之前,我需要修复此问题:
我的控制器:
def show
results = Record.get_record(params[:trans_uuid])
if !results.empty?
record = results.map { |res| res.attributes.symbolize_keys }
@record = Record.replace_nil(record) # this calls method in Model
else
flash[:error] = 'No record found'
end
end
我的型号:
def self.replace_nil(record)
record.each do |r|
r.values == nil ? "None" : r.values
end
end
record
传递给 Model 方法时看起来像这样self.replace_nil(record
:
[{:id=>1, :time_inserted=>Wed, 03 Apr 2019 15:41:06 UTC +00:00, :time_modified=>nil, :request_state=>"NY", :trans_uuid=>"fe27813c-561c-11e9-9284-0282b642e944", :sent_to_state=>-1, :completed=>-1, :record_found=>-1, :retry_flag=>-1, :chargeable=>-1, :note=>"", :bridge_resultcode=>"xxxx", :bridge_charges=>-1}]