【问题标题】:Update one model and create other model in one form Rails 3.2.5更新一个模型并以一种形式创建另一个模型 Rails 3.2.5
【发布时间】:2013-01-23 20:19:41
【问题描述】:

我有一个表单可以完美地创建两个模型,但是,有没有办法更新其中一个模型并创建另一个模型? 恢复: 我有一个用于创建约会的表格,我也可以为此约会创建人。

def new
  @Cita = Cita.new
  @Cita.build_paciente

  render :new
end

def create

 @Cita = Cita.new(params[:cita])

 if @Cita.save
  redirect_to :action => 'hoy'
 else
  render  'new'

结束

当我同时创建两个模型时,这工作得很好,但如果我填写人员字段...... 我该如何更新人员属性(“paciente”)并为该人创建约会(“Cita”)。

谢谢。

【问题讨论】:

  • 抱歉,最后我解决了这个问题,在 ID 的人员表单上添加了一个隐藏字段。 Rails 非常聪明:)
  • 自己将其添加为答案并接受它 - 这样,每个可能正在寻找解决同一问题的解决方案的人都会立即找到它:-)

标签: ruby-on-rails ruby forms nested


【解决方案1】:

最后我解决了这个问题,在人员表单上添加了一个填充 person_ID 的隐藏字段。当您在模型属性中发送 ID 时,rails 会对该模型进行更新而不是插入,同时创建与嵌套模型相关联的其他模型。 如果此隐藏字段为空,rails 会同时创建两个模型。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-26
    相关资源
    最近更新 更多