I need to create a sort of transaction around some Active Record objects
that perform many insert/updates.
Example:
class MyObject
def transaction &block @my_var = value
self.instance_eval block
end
end
MyObject.new.transaction do
Model.create
Model.collection.create
etc…
end
I have a gem that add a method into AR::Base and I need to read the
variables setted by the transaction inside the method at runtime.
Any way I can access the block scope from there inside?
MyObject.new.transaction do
Model.create
Model.collection.create
etc…
end
I have a gem that add a method into AR::Base and I need to read the
variables setted by the transaction inside the method at runtime.
Any way I can access the block scope from there inside?
Why not use an actual transaction? If you’re generating some per
transaction value then pass it as an argument to the methods you’re
calling inside the transaction.