don*_*ald 15 ruby-on-rails ruby-on-rails-3
如何ActiveRecord::RecordNotUnique在控制器中处理异常?谢谢
编辑:我在生成唯一代码时遇到异常.我可以在application_controller.rb中处理异常,但我真正想要的是再次生成代码并且必须在控制器中完成.
generate_code
@couponcode = Couponcode.new(:user_id => current_user.id, :code => @code)
Run Code Online (Sandbox Code Playgroud)
编辑2:
generate_code
begin
@couponcode = Couponcode.new(:user_id => current_user.id, :code => @code)
rescue ActiveRecord::RecordNotUnique
#generate_code
@code = "111-11111"
@couponcode = Couponcode.new(:user_id => current_user.id, :code => @code)
end
Run Code Online (Sandbox Code Playgroud)
idl*_*ers 27
begin
# do stuff
rescue ActiveRecord::RecordNotUnique
# handle the exception however you want to
end
Run Code Online (Sandbox Code Playgroud)
http://ruby-doc.org/docs/ProgrammingRuby/html/tut_exceptions.html
rescue_from如果你经常需要处理它,你也可以使用它.