【发布时间】:2016-11-14 06:34:42
【问题描述】:
当我尝试在新数据库上不进行迁移时,我收到此错误:
django.db.utils.ProgrammingError: (1146, "表 'dorogi_test.activities_category' 不存在")
它是由这个查询提出的:
models.Category.objects.filter(level=0, active=True).get_descendants(include_self=True)
迁移前执行,所以不存在不存在的表。
我尝试执行以下操作:
def get_top_news_category():
if models.Category.objects.exists():
return models.Category.objects.filter(level=0, active=True).get_descendants(include_self=True)
@permission_classes((permissions.AllowAny,))
class TopNewsViewSet(mixins.ListModelMixin, viewsets.GenericViewSet):
serializer_class = ArticleSerializer
c = get_top_news_category()
queryset = models.Article.objects.filter(hot=True, category__in=c).order_by('-id')[:3]
但我的代码在此检查时也会崩溃。如何避免这个错误,让 Django 在不注释代码的情况下开始迁移?
【问题讨论】:
标签: django database django-migrations