Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.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
Django检查queryset模型类型的最佳方法_Django_Action_Django Queryset - Fatal编程技术网

Django检查queryset模型类型的最佳方法

Django检查queryset模型类型的最佳方法,django,action,django-queryset,Django,Action,Django Queryset,我有一个Django动作函数,我想在基于不同模型的QuerySet上使用它 检查我的查询集所包含的模型类型的最佳方法是什么?假设我想检查my models.py中定义的库类 目前,我可以使用 for object in queryset : if object.__class__.__name__ == "Library" 但我相信有更好的办法 我假设我使用queryset.model做了一些事情。 我尝试了以下方法,但它没有达到我想要的效果: import myapp.models

我有一个Django动作函数,我想在基于不同模型的QuerySet上使用它

检查我的查询集所包含的模型类型的最佳方法是什么?假设我想检查my models.py中定义的库类

目前,我可以使用

for object in queryset :
    if object.__class__.__name__  == "Library"
但我相信有更好的办法

我假设我使用queryset.model做了一些事情。 我尝试了以下方法,但它没有达到我想要的效果:

import myapp.models.Library

def my function(modeladmin,request  queryset )

    if isinstance(queryset.model , Library ) :
        # do something specific here

好的,我明白了,我用is代替isinstance():


您可以使用
modeladmin.model
查找modelYes,但这与queryset.model给我的相同。当此检查失败时,将引发什么异常?
if queryset.model is Library :
    # do something.