Django Queryset代表

2024-05-18 15:19:04 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我把烧瓶换成了Django来尝试后者。到目前为止,我真的很喜欢Django的模型,但是我遇到了一个我无法解决的问题。在

因此,我正在制作一个博客应用程序,当我运行以下程序时,会出现以下错误:

Unable to get repr for class 'django.db.models.query.QuerySet'

这是生成这个错误的代码,它发生在我试图拉取所有Category类的那一行。。。在

class HomeView(TemplateView):
    template_name = "home.html"
    context_object_name = 'nav_elements'

    def get_context_data(self, **kwargs):
        nav_elements = {}
        if OASIS_BLOG in INSTALLED_APPS:
            nav_elements[OASIS_BLOG[5:]] = self.get_categories() 
        return nav_elements

    @staticmethod
    def get_categories():
        from apps.OASIS_Blog.models import Category
        cats = Category.objects.all()
        catdict = {}
        for cat in cats:
            if not cat.parent_category:
                if not catdict.get(cat.name):
                    catdict[cat.name] = []
                else:
                    pass
            else:
                if cat.parent_category.name in catdict.keys():
                    catdict[cat.parent_category.name].append('\t' + cat.name)        
                else:
                    catdict[cat.parent_category.name] = ['\t' + cat.name]    
        return catdict

这是分类模型。。。在

^{pr2}$

我不知道为什么会发生这种情况,我试图通过调试或在论坛和文档中寻找解决方案,但没有找到任何对我有建议的解决方案。有人知道这里发生了什么事吗?在


Tags: djangonamein模型getifelementselse
1条回答
网友
1楼 · 发布于 2024-05-18 15:19:04

问题似乎是我在导演管理.py脚本到错误的设置文件。还有一些问题没有得到解答。最重要的一点是为什么我可以访问shell中的类别数据,但在运行服务器时却不能。可能跟怎么做有关管理.py被称为。在

在前一种情况下,我会称之为“python”管理.pyshell,在后者中我称之为python管理.py运行服务器配置设置'(我把这个改成config.environment.development配置环境开发,现在它工作正常)。在

相关问题 更多 >

    热门问题