【发布时间】:2018-11-24 19:23:23
【问题描述】:
我正在阅读django-rest-framework 中过滤器的单元测试。我尝试通过添加上述模型在另一个项目中本地模拟单元测试,但我的测试失败:django.db.utils.ProgrammingError: relation "blog_post" does not exist。
tests.py
from django.test import TestCase
from django.db import models
from rest_framework import filters, serializers
class Post(models.Model):
title = models.CharField(max_length=20)
content = models.TextField(max_length=255)
class PostSerializer(serializers.ModelSerializer):
class Meta:
model = Post
fields = '__all__'
class TestPostFilter(TestCase):
def setUp(self):
Post.objects.create(title="A post title",content="some post content")
def test_search(self):
assert True
我知道要为模型创建相应的数据库表,我们必须运行 ./manage.py makemigrations blog 和 ./manage.py migrate blog,但上面的 example 添加一个虚拟模型仅用于测试目的。我看不到该模型迁移是如何执行的。可能在后台发生了很多事情。我的问题是这个模型是如何在测试数据库中创建的?
【问题讨论】:
标签: django unit-testing django-rest-framework