我有一个 Rails 2.3 应用程序。
我目前在我的模型中有以下验证:
validates_presence_of :jobno, :companyname
我有以下控制器:
# POST /kases
# POST /kases.xml
def create
@company = Company.find(params[:kase][:company_id])
@kase = @company.kases.create!(params[:kase])
respond_to do |format|
UserMailer.deliver_makeakase("EMAILADDRESS", "Highrise", @kase) if params[:sendtohighrise]
UserMailer.deliver_makeakaseteam("EMAILADDRESS", "Highrise", @kase) if params[:notify_team_of_creation]
@kase.delay.create_freeagent_project(current_user) if params[:send_to_freeagent]
#flash[:notice] = 'Case was successfully created.'
flash[:notice] = fading_flash_message("Case was successfully created.", 5)
end
format.html { redirect_to(@kase) }
format.xml { render :xml => @kase, :status => :created, :location => @kase }
end
因此,当您尝试创建不包含 jobno 或 companyname 的新记录时,我正确收到以下错误消息:
ActiveRecord::RecordInvalid in KasesController#create
Validation failed: {{errors}}
我已经阅读了恢复能力,但我不确定如何/在哪里使用它。我已经阅读了一些关于拯救表单内容的能力的文件。我试图使表单保持原位 - 输入内容 - 但在表单上显示错误。
我读过的文件之一是这里http://apidock.com/rails/ActiveRecord/RecordInvalid
我不想记录错误,只需告知用户问题所在,以便他们重试。
这可能吗?
谢谢,
丹尼