Менеджер недоступен через экземпляр класса
Недавно я столкнулся с Manager isn't accessible via model instance
этой ошибкой.
Прочитав Django doc, я смог решить эту проблему.
https://docs.djangoproject.com/en/dev/topics/db/queries/#retrieving-objects
В документации по Django упоминается следующая причина:
Managers are accessible only via model classes, rather than from model instances, to enforce a separation between “table-level” operations and “record-level” operations.
Я не могу понять вышеприведенное утверждение.
Может ли кто-нибудь объяснить это простыми словами
MyModel.objects.all() # Allowed to access manager (MyModel.objects) via the model
instance = MyModel.objects.get(id=1)
instance.objects.all() # ERROR! Not allowed to access manager (instance.objects) via instance