title: Where should custom object managers that are to be shared between apps go?
body: <p>My Django app has several apps, each with their own <code>models.py</code>. I also have an <code>api</code> app which provides a REST API.</p>
  
  <p>For model <code>A</code>, I often wanted to get data paginated a certain way (the <a href="https://www.datatables.net/" rel="nofollow">data-tables</a> way). I wanted to do this in a few places (inside the <code>api</code> app and some main UI apps), so I created a custom object manager <code>PaginationManager</code> and attached it to model <code>A</code>. Then </p>
  
  <p>Life was good and DRY, but now another model <code>B</code> needs to be gotten in a paginated way. I would like to use the same <code>PaginationManager</code>, but which app should it go in? Does it belong outside of any app? It seems like a lot of business logic to be putting in a <code>util</code> folder or something.</p>