【发布时间】:2014-08-14 10:10:33
【问题描述】:
我有两个按钮保存和提交。如果触发了提交,则应运行验证,否则应跳过验证。在我的控制器的创建和更新方法中,我定义了这样的条件来确保这一点。
创建动作
@applicant = Applicant.new(applicant_params)
build_images
if !params[:submit_button].blank?
if !@applicant.save
render 'new'
else
redirect_to users_applicants_path, notice: 'Competition application successfully created.'
end
else
@applicant.save(:validate => false)
redirect_to users_applicants_path, notice: 'Competition application successfully created.'
end
更新操作
@applicant = Applicant.find(params[:id])
build_images
@applicant.assign_attributes(applicant_params)
if !params[:submit_button].blank?
if !@applicant.save
render 'edit'
else
redirect_to users_applicants_path, notice: 'Competition application successfully updated.'
end
else
@applicant.save(:validate => false)
redirect_to users_applicants_path, notice: 'Competition application successfully updated.'
end
当我想第一次提交表单时,验证工作正常,但是当我保存然后尝试提交时,验证仅适用于申请人和伴奏模型,但不适用于照片和视频。申请人有_one 伴奏和has_many 照片和视频。问题出在更新中,但我不知道为什么。
【问题讨论】:
标签: ruby-on-rails validation ruby-on-rails-4