【发布时间】:2019-07-09 07:54:42
【问题描述】:
我在尝试运行单元测试时遇到问题。 为什么它会给我那个错误信息?
tests.py 中的代码:
class CourseTestCase(TestCase):
def create_category(name="English", imgpath="ImgPath"):
return Category.objects.create(name=name, imgpath=imgpath)
def setUp(self):
Course.objects.create(
name='English',
description='Sample text',
category_id=self.create_category().id,
logo='Logo'
)
def test_course_category(self):
english = Course.objects.get(name='English')
self.assertEqual(english.category_id, 1)
模型.py:
class Category(models.Model):
name = models.CharField(max_length=64)
imgpath = models.CharField(max_length=64)
def __str__(self):
return str(self.name)
class Course(models.Model):
name = models.CharField(max_length=64)
description = models.TextField()
category = models.ForeignKey(Category, on_delete=models.CASCADE, null=False)
logo = models.TextField()
def __str__(self):
return str(self.name)
ValueError:无法分配“'Category'”:“Course.category”必须是“Category”实例。
【问题讨论】:
-
你能分享你的models.py吗?
-
欢迎来到 StackOverflow!寻求调试帮助的问题(“为什么这段代码不起作用?”)必须包括所需的行为、特定的问题或错误以及重现它所需的最短代码在问题本身。没有明确的问题陈述的问题对其他读者没有用处。请参阅:How to create a Minimal, Complete, and Verifiable example。
-
刚刚添加的-models.py,下面的代码帮不上我了(
标签: python python-3.x unit-testing django-rest-framework