新手问题 ActiveRecod 中当模型对象校验失败后,关联模型的数据丢失,该怎么处理?

LongLonghaoran · 2018年04月17日 · 315 次阅读

两个模型大概是这个样子的

class Apply
 has_many: reibursement_sheets
end
class ReimbursementSheet < ActiveRecord::Base
  belongs_to :apply

  validates_presence_of :daily_business_id, :use, :cash
end

表单使用的是simple_form_for 中的simple_fields_for,大概是这样的

= simple_form_for @apply, :as => "apply", url: applies_reimbursement_applies_path, :html => {:multipart => true} do |f|
= f.hidden_field :applicant_id, value: current_user.id
= f.hidden_field :business_id, value: Business::REIMBURSEMENT
strong.lay-title= t(:apply_s_department)

= f.simple_fields_for :reimbursement_sheet do |r|
  br
  strong.lay-title
    = r.input :daily_business_id, input_html: {type: 'text'}
  strong.lay-title
    = r.input :cash
  strong.lay-title
    = r.input :use
strong.lay-title
  = f.input :file_path
p.x-tool-bar
  = f.submit t(:submit), class: "x-button x_button_ok", id: "apply_submit", name: "commit"

现在问题是,当保存后因为模型校验失败,重新render页面后,关联模型的数据丢失了,请问这个该怎么办?求帮忙

暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册