Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 测试用例给定错误对象没有属性“\u meta”_Python_Django_Django Managers - Fatal编程技术网

Python 测试用例给定错误对象没有属性“\u meta”

Python 测试用例给定错误对象没有属性“\u meta”,python,django,django-managers,Python,Django,Django Managers,我有以下Django测试用例: objects = ActionManager() action = objects.log_action(user=self.test_user) self.assertIsInstance(action, Action) 但是,由于在上述示例中访问管理器的非常规方式,我得到以下错误: app=型号。_meta.app\u标签 AttributeError:“非类型”对象没有属性“\u meta” 经理: 我认为这是因为管理器没有以Action.objects

我有以下Django测试用例:

objects = ActionManager()
action = objects.log_action(user=self.test_user)
self.assertIsInstance(action, Action)
但是,由于在上述示例中访问管理器的非常规方式,我得到以下错误:

app=型号。_meta.app\u标签

AttributeError:“非类型”对象没有属性“\u meta”

经理:

我认为这是因为管理器没有以Action.objects.log\u Action的方式连接到模型,因此self.model不起作用。这就是我认为正在发生的事情


我的问题是,如何在保持self.model和我的测试用例得体的同时解决这个问题?

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

objects = ActionManager()
objects.model = MyModel

你能解释一下为什么要这样做,而不是像往常一样将对象定义放在模型中吗?@DanielRoseman只是因为我遵循了关于如何在Django中测试管理器的指南:这是怎么回事?这不是对模型本身的循环引用吗?
objects = ActionManager()
objects.model = MyModel