После прочтения Django Managers я все еще не знаю, какую выгоду я получу, используя его. Похоже, что лучше всего использовать специальные запросы (только для чтения), такие как XYZ.objects.findBy*(). Но я легко могу сделать это с помощью статических методов вне классов Model.
Я предпочитаю последнее всегда, потому что:
- местонахождение кода с точки зрения удобочитаемости и упрощения обслуживания
- немного меньше подробностей, поскольку мне не нужно свойство
objectsв моих вызовах -
Managerклассы имеют странные правила, касающиеся наследования модели, также могут не бояться этого.
Есть ли веская причина не использовать статические методы и вместо этого использовать классы диспетчера?