将变量传递给Rails控制器方法

时间:2016-02-01 15:11:45

标签: ruby-on-rails

我正在使用嵌套表单执行Rails 4应用程序。我有嵌套字段的表单。创建工作正常:

def create_medical_history
    @patient_id = params[:patient]
    @medical_history = MedicalHistory.new(medical_history_params)
    if @medical_history.save
      redirect_to patient_path(@patient_id)
    else
      render 'new_medical_history'
    end
end

问题出在其他情况。首先在我的表单中我定义了@patient变量,所以当我render new_medical_history @patient变量变为nil时。

我需要再次传回来。我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

您需要再次定义@patient,以准备渲染。

例如:

else
  @patient = Patient.find_by id: @patient_id
  render 'new_medical_history'
end

或您需要再次为患者分配的任何东西。