django对象报错object has no attribute ‘count‘

提问

我正在学习django/python,并被一个问题给卡住了。

我有一个视图:create_document.py,我想在其中计算模型类NameDetails中的名字细节数量。

但我不知道正确的写法!

这是我models.py的代码:

python 复制代码
class NameDetails(FillableModelWithLanguageVersion):
    user = models.ForeignKey(User)
    name_details_prefix_title = models.CharField(null=True, blank=True, max_length=25)
    name_details_first_name = models.CharField(null=False, blank=False, max_length=50)
    name_details_middle_name = models.CharField(null=True, blank=True, max_length=100)
    ....

这是我create_document.py的代码,里面用到了django wizard。我想要确定的是用户在他们能够创建文档前,至少有一个名字。

python 复制代码
from app_name.core.models import NameDetails

class CreateDocumentWizard(SessionWizardView):
    template_name = 'documents/document_create.html'

    form_list = [
        core_forms.CreateDocumentWizardForm01,
        core_forms.CreateDocumentWizardForm02,
        core_forms.CreateDocumentWizardForm03,
        core_forms.CreateDocumentWizardForm04,
    ]

    def get_form_kwargs(self, step=None):
        kwargs = super(CreateDocumentWizard, self).get_form_kwargs(step)
        kwargs.setdefault('user', self.request.user)
        return kwargs

    def get_context_data(self, form, **kwargs):

        name_details_count = NameDetails(user=self.request.user).count()
        if name_details_count < 1:
            return redirect(settings.MENU_DETAIL_LINK_NAME_DETAILS)

当我使用name_details_count = NameDetails(user=self.request.user).count()确定用户的NameDetails计数时,我得到了以下错误:

NameDetails' object has no attribute 'count'

我已经尝试了很多种组合,但现在还是卡住了。

回答1

你的get_context_data函数应该这样写:

python 复制代码
name_details_count = NameDetails.objects.filter(user=self.request.user).count()

回答2

眼下你正在以request.user为用户创建一个全新的NameDetails实例。相反,你应该查询数据库中当前用户已有的NameDetails,并对他们进行计数。你可以通过NameDetails.objects查询数据库:

python 复制代码
name_details_count = NameDetails.objects.filter(user=self.request.user).count()

欢迎来弦圈一起翻译StackOverflow等国外编程内容👇👇👇
翻译原文: django对象报错object has no attribute 'count'
更多Django相关内容: Django - 弦圈
更多其他趣味内容: 弦圈 - 找到属于你的圈子

相关推荐
Wang's Blog2 小时前
PostgreSQL笔记22: WAL日志与崩溃恢复原理
数据库·笔记·postgresql
陈聪.3 小时前
企业级 NoSQL 数据库 Redis 核心知识整理
数据库·redis·nosql
翼龙云_cloud3 小时前
腾讯云国际代理商:CDB数据库自动备份和异地灾备配置 从快照到跨区域恢复
运维·数据库·云计算·腾讯云
小屁孩你滑稽掉了3 小时前
prisma操作数据库的方法使用教程(简洁版)
数据库·node.js·prisma·fastify
SelectDB技术团队3 小时前
腾讯音乐内容库 ES 替代:从 Elasticsearch 到 Apache Doris 统一搜索分析引擎实践
elasticsearch·django·apache doris
l1t3 小时前
利用DuckDB luajit插件和openblas库对表中数据做矩阵运算
数据库·线性代数·矩阵·duckdb
Elastic 中国社区官方博客4 小时前
Elasticsearch:什么是向量数据库?
大数据·运维·数据库·人工智能·elasticsearch·搜索引擎·ai
cspttty4 小时前
财务人员学数据分析考什么证
数据库
隔窗听雨眠5 小时前
MySQL索引机制深度解析:从B+树原理到高并发查询优化的完整指南
数据库·b树·mysql
数智化管理手记5 小时前
数据质量无法保障?自动化数据质量规则校验如何搭建方案?
大数据·数据库·自动化