ruby-on-rails - permitted - rails permit param
Acción de transacción con Ruby On Rails (2)
Tengo una acción compleja dentro del controlador que realiza varias consultas de actualización a la base de datos.
¿Cómo puedo hacer que esta acción actúe como transacción sin ninguna refactorización estructural?
MyModel.transaction do
begin
@model.update_stuff
@sub_model.update_stuff
@sub_sub_model.update_stuff
rescue ActiveRecord::StatementInvalid # or whatever
# rollback is automatic, but if you want to do something additional,
# add it here
end
end
Aquí están los documentos para el método de transacción .
Es posible realizar todas las acciones en el controlador transaccional de una vez con:
around_filter :transactional
def transactional
ActiveRecord::Base.transaction do
yield
end
end