我需要渲染json,然后引发ActiveRecord::Rollback,可以吗?
场景就像API被调用,在一些操作失败后,我们需要让API用户知道错误是什么,并回滚执行的操作。
试过这个
render json: response, status: status
raise ActiveRecord::Rollback
这会引发错误"ActiveRecord::Rollback:ActiveRecord::回滚"
还有别的办法吗
我需要渲染json,然后引发ActiveRecord::Rollback,可以吗?
场景就像API被调用,在一些操作失败后,我们需要让API用户知道错误是什么,并回滚执行的操作。
试过这个
render json: response, status: status
raise ActiveRecord::Rollback
这会引发错误"ActiveRecord::Rollback:ActiveRecord::回滚"
还有别的办法吗
3条答案
按热度按时间kcugc4gi1#
可以将错误存储在示例变量中。如果存在错误,回滚事务,然后呈现错误消息。例如:
u59ebvdq2#
如果目的是创建一个预览,了解数据库将如何使用更改,然后回滚,我认为最好的方法是使用around_action过滤器。
这是Rails指南中的示例:
https://guides.rubyonrails.org/action_controller_overview.html#after-filters-and-around-filters
ogsagwnx3#
你可以这样做:
它会自动回滚你的数据。Thanks:)