我有一个带日期的表单,如果他们在一个范围之外提交表单,我想提示用户,但仍然让他们有机会在范围之外提交。
例如(伪代码)
if date < start_date and current_user.admin?
answer = ask 'are you sure you want to submit below the date range?'
elsif date > end_date
answer = ask 'are you sure you want to submit over the date range?'
else
answer = 'yes'
end
if answer == 'yes'
submit
else
return to original form
end
我在想一个解决方案是一个多表单向导类型的实现,但有更简单的方法吗?
例如,首先我会显示带有日期字段的原始表单。然后当用户点击“提交”按钮时检查服务器是否必须要求用户确认他们超出范围日期,如果是,则显示部分并等待他们点击“确认”或“是”按钮。
答案 0 :(得分:0)
对我来说,听起来你应该在你提交表格的控制器中有一个中间动作。此中间操作验证表单参数,并呈现部分或仅相应地提交表单。部分提交按钮将包含指向提交的最终操作的链接。