Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在Django中统计相关模型中的数据?_Python_Django_Django Models_Django Views_Django Templates - Fatal编程技术网

Python 如何在Django中统计相关模型中的数据?

Python 如何在Django中统计相关模型中的数据?,python,django,django-models,django-views,django-templates,Python,Django,Django Models,Django Views,Django Templates,我试图计算相关模型的价值,但我无法计算,请告诉我我错在哪里 这是我的models.py文件 class Project(models.Model): name=models.CharField(max_length= 225) slug=models.SlugField(null=True, unique=True) class Detail(models.Model): project = models.OneToOneField('Project', related

我试图计算相关模型的价值,但我无法计算,请告诉我我错在哪里

这是我的
models.py
文件

class Project(models.Model):
    name=models.CharField(max_length= 225)
    slug=models.SlugField(null=True, unique=True)

class Detail(models.Model):
    project = models.OneToOneField('Project', related_name='detailsofpro', on_delete=models.CASCADE, blank=True, null=True)
    possession = models.CharField(max_length=50, null=True, blank=True, choices=(('Under Construction', 'Under Construction'),('New launch', 'New Launch'),('Ready To Move', 'Ready To Move')))
这是我的
views.py
文件

def admin_view(request):
    project = Project.objects.prefetch_related('project_details').annotate(Count('possession'))
    return render(request, 'index.html', {'project': project})
这是我的
index.html
friel

<p>{{project.project_details.possession.count}}</p>
{{project.project\u details.converage.count}


我想从<代码>详细信息<代码>模型中计算
占有量
,请告诉我如何计算您不需要任何
。预取相关(…)
注释(…)
。您可以做的是,在这里对每个值的
Posession
进行聚合:

def admin_view(request):
    possessions = Detail.objects.values('possession').annotate(
        nprojects=Count('project')
    ).order_by('possession')
    return render(request, 'index.html', {'possessions': possessions})
def管理视图(请求):
财产=详细信息。对象。值(‘财产’)。注释(
n项目=计数('项目')
).由(“占有权”)发出的命令
返回render(请求'index.html',{'attachments':attachments})
在模板中,您可以迭代记录:

{% for item in possessions %}
    {{ item.possession }}: {{ item.nprojects }}<br>
{% endfor %}
{%用于物品%}
{{item.properties}}:{{{item.nprojects}}

{%endfor%}
你说的“计数<编码>占有权”是什么意思?计算
细节的数量有什么区别?你的
项目
不是一个单独的
项目
,而是所有
项目
中的
查询集
,因此
项目
的名称没有多大意义,
{project}
也没有多大意义,或者类似的事情。事实上,我想计算一下在
详细信息
表格中
拥有的
字段中有多少
项目
正在建设中
,如果我想计算
详细信息
模型中的
字段的可用性,我会在什么时候做……您可以使用类似的技术来替换
拥有
中的
可用
值(…)
.order\u by(…)
和在模板中。您的意思是说我需要为此创建另一个查询…@msginfosys:是的。在同一个查询中可能吗,因为这两个字段在同一个模型中都可用。。。