测试用例给出错误对象没有属性' _meta'

时间:2015-05-06 14:05:22

标签: python django django-managers

我有以下Django测试用例:

objects = ActionManager()
action = objects.log_action(user=self.test_user)
self.assertIsInstance(action, Action)

但是,由于我在上面的示例中访问管理器的非常规方式,我收到此错误:

  

app = 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和我的测试用例的同时解决此问题?

1 个答案:

答案 0 :(得分:0)

没有理由不能自己设置模型。

objects = ActionManager()
objects.model = MyModel