Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.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筛选器orm中获取当前对象_Python_Django_Django Models_Filter_Django Orm - Fatal编程技术网

Python 在django筛选器orm中获取当前对象

Python 在django筛选器orm中获取当前对象,python,django,django-models,filter,django-orm,Python,Django,Django Models,Filter,Django Orm,这可能是一个基本的问题,但请容忍我。如何在ORM查询中获取当前对象 x = 'abc' sample = Sample.objects.filter( x__in = sample_obj.x_list ) sample\u obj指的是sample的所有对象。此处示例为具有x_列表的模型: class Sample(models.Model): x_list = ListTextField( base_field=models.CharField(max_leng

这可能是一个基本的问题,但请容忍我。如何在ORM查询中获取当前对象

 x = 'abc'
 sample = Sample.objects.filter( x__in = sample_obj.x_list )
sample\u obj
指的是
sample
的所有对象。此处示例为具有x_列表的模型:

class Sample(models.Model):
    x_list = ListTextField(
        base_field=models.CharField(max_length=20),
        size=10, max_length=(10 * 11))
所以基本上我想过滤,如果模型中的列表字段有一个特定的值。
编辑:我想进一步澄清我的问题:假设有3个
样本
对象,我想检查样本对象的
x\u列表中是否有
x
。并将这些对象保存在变量
sample
中。让
x\u list
成为字符串列表。

您应该使用查找,而不是
中的
\u:


samples=Sample.objects.filter(x\u list\u contains=x)

您对当前对象是什么意思?如果有多个匹配的对象怎么办?或者根本没有?如果
x
也是一个列表,并且我想要精确匹配怎么办。i、 e.如果
x
中的所有项目都与
x\u列表中的项目匹配
?我想您可以使用
=
操作符。像
Sample.objects.filter(x_list=x)
我的意思是
x_list
可以有其他项,但是
x
中的所有项都应该在
x_list
中。这似乎没有内置的查询,但你可以这样查询:
Sample.objects.filter(**{“x_list\u包含”:x中的值)