У меня есть следующий тестовый пример Django:
objects = ActionManager()
action = objects.log_action(user=self.test_user)
self.assertIsInstance(action, Action)
Однако из-за нетрадиционного способа доступа к менеджеру в приведенном выше примере я получаю эту ошибку:
приложение = model._meta.app_label
AttributeError: объект «NoneType» не имеет атрибута «_meta»
Менеджер:
class ActionManager(models.Manager):
def log_action(self, user, content_object):
action = self.model(
user=user,
)
user.save(using=self._db)
return action
Я предполагаю, что причина этого в том, что менеджер не привязан к модели Action.objects.log_action
, поэтому self.model
не работает. Это то, что я предполагаю, происходит.
Мой вопрос в том, как я могу решить эту проблему, сохраняя при этом self.model
и мой тестовый пример?
objects
в модель, как обычно? - person Daniel Roseman   schedule 06.05.2015