在我的控制器中,我希望通过重定向回导致带有flash消息的异常的控制器操作来处理ActiveRecord :: RecordInvalid异常,但我还想保留用户输入的表单数据。有没有最好的方法来解决这个问题?
rescue_from ActiveRecord::RecordInvalid do |exception|
redirect_to :back, alert: exception.message
end
目前正在重定向并正确显示Flash消息,但我不确定保留表单数据的最佳做法是什么。提前谢谢。
答案 0 :(得分:0)
通常这是处理控制器中异常的方法。说创建动作。
def create
@your_inst_var = YourModel.new(your_instance_var_params)
if @your_inst_var.save
redirect_to your_inst_var_path, notice: 'Your Inst Var was successfully created.'
else
render action: 'new'
end
end
* your_instance_var_params被定义为满足rails 4强参数的私有方法