I have a Production model, which represents a farmer's crop. After create (via after_save) I call a method that creates one or more Supply models, which represent a week of anticipated product harvest. After each of those are created, a class method gets called that tries to match each new Supply with outstanding orders for the same time period. If a match is made, a transaction (an Exchange model acting as the join record) is created and it adjusts the quantities in both the Supply and Order models.
Well, it ain't working. I mean, it almost does, but after_save filter seems to be calling methods during the transaction, not after the commit. The quantity updates on the Supply and Order models are getting blown away. It seems I was mislead by the name of "after_save". before_save doesn't work because the id for the Production hasn't been assigned and the relationships can't be set then. First, are my observations about after_save and the transaction correct? Second, is there another callback filter I should be using instead, one that happens after the transaction? Or is my design suspect? Recommendations welcome. Thanks! :) -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

