Ruby on rails 如何编辑具有未知键的序列化数组
我有以下带有序列化变量的模型: 创建_expenses.rbRuby on rails 如何编辑具有未知键的序列化数组,ruby-on-rails,arrays,serialization,Ruby On Rails,Arrays,Serialization,我有以下带有序列化变量的模型: 创建_expenses.rb 但它不起作用。有什么建议吗?找到了解决方法,但不确定是否对此进行了优化 对于每个数组,使用输入而不是f.text\u字段: <input type="number" name="nb_kms[]" value="<%= @nb_kms[i] %>"> 我目前正在为每个数组做一个循环。可能有一种更干净的方法来更新我的数组,但我不知道在给定的索引下应该如何更新哪个数组 最后,由于我允许用户编辑show View页
但它不起作用。有什么建议吗?找到了解决方法,但不确定是否对此进行了优化 对于每个数组,使用输入而不是f.text\u字段:
<input type="number" name="nb_kms[]" value="<%= @nb_kms[i] %>">
我目前正在为每个数组做一个循环。可能有一种更干净的方法来更新我的数组,但我不知道在给定的索引下应该如何更新哪个数组
最后,由于我允许用户编辑show View页面中的数据,因此我必须在routes.rb文件中添加这一行:
我对其他解决办法持开放态度
class Expense < ActiveRecord::Base
belongs_to :user
serialize :traject_names
serialize :nb_kms
serialize :parkings
serialize :trains
serialize :taxis
serialize :metros
serialize :meals
serialize :hotels
serialize :natures
serialize :amounts
serialize :o_ns
serialize :clients
end
<%= f.fields_for :nb_kms, @expense.nb_kms[i] do |answer_fields| %>
<%= answer_fields.text_field "", :value => @expense.nb_kms[i] %>
<% end %>
<input type="number" name="nb_kms[]" value="<%= @nb_kms[i] %>">
params['nb_kms'].each_with_index do |nb_km, i|
@expense.nb_kms[i] = nb_km
end
if @expense.update(expense_params)
...
patch '/expenses/:year/:month/' => 'expenses#update'