我创建了一个应用程序,医生可以为他的病人输入治疗。我添加了一些验证,现在当医生输入错误的东西时,Rails会以某种方式重定向到患者表格并要求用户更改他的输入。但我不想要这种行为!当输入为假时,Rails根本不应该保存它并重定向到患者节目!!
这是我的控制器:
def create
@patient = Patient.find(params[:patient_id])
@treatment = @patient.treatments.create(params[:treatment])
redirect_to patient_path(@patient)
end
我的模特:
class Treatment < ActiveRecord::Base
belongs_to :patient
validates :content, presence: true
...
end
答案 0 :(得分:1)
def create
@patient = Patient.find(params[:patient_id])
@treatment = @patient.treatments.new(params[:treatment])
if @treatment.save
redirect_to patient_path(@patient)
else
## The page you want to redirect to
end
end
答案 1 :(得分:0)
您可以通过以下方式完成:
render action: 'show'
但如果没有创建患者,我们怎样才能显示出来?您可能想要使用:
render action: 'new'
或
render action: 'index'