我正在对我的新 Django 代码进行测试。我有以下型号:
class Places(models.Model):
name = models.CharField(max_length=20)
street = models.CharField(max_length=50)
number = models.IntegerField()
confirmed = models.BooleanField()
notes = models.TextField()
def __unicode__(self):
return self.address
class Meta:
db_table = "Places" # to prevent the prefixes from being added on
当我在 manage.py shell 中执行此操作时,我得到了正确的响应:
from my_app.models import Places
Places.objects.get(name='home').confirmed
>>> True
当在我的应用程序中的单元测试(manage.py test myapp)下执行相同的代码时,我收到错误:
Places matching query does not exist django
当我尝试使用 PDB 时,我发现 Django 将数据库读取为空(一个空集)而不是存储任何数据。
我还在代码中尝试了 RAW SQL,但也失败了,但在 shell 中工作。
我检查了 sql 本身中的数据库并且数据存在。我执行了等效的 SQL 代码,它也返回 True。
这是 Django 中的错误吗?