title: Django post_save preventing recursion without overriding model save()
body: <p>There are many Stack Overflow posts about recursion using the <code>post_save</code> signal, to which the comments and answers are overwhelmingly: "why not override save()" or a save that is only fired upon <code>created == True</code>.</p>
  
  <p>Well I believe there's a good case for not using <code>save()</code> - for example, I am adding a temporary application that handles order fulfillment data completely separate from our Order model.</p>
  
  <p>The rest of the framework is blissfully unaware of the fulfillment application and using post_save hooks isolates all fulfillment related code from our Order model.</p>
  
  <p>If we drop the fulfillment service, nothing about our core code has to change. We delete the fulfillment app, and that's it.</p>
  
  <p>So, are there any decent methods to ensure the post_save signal doesn't fire the same handler twice?</p>