Creating the model's managers

To make our application more readable and not clutter the endpoints with a lot of business logic, we are going to create managers for our model classes. If you followed the previous chapter, you should be very familiar with this. In a nutshell, managers are an interface that provide query operations to Django models.

By default, Django adds a manager to every model; it is stored on a property named objects. The default manager that Django adds to the models is sometimes sufficient and there's no need to create a custom manager, but it is a good practice to keep all database-related code within the model. This will make our code more consistent, readable, and easier to test and maintain.

In our case, the only ...

Get Python Programming Blueprints now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.