在 Django 过滤器 orm 中获取当前对象

get current object in django filter orm

这可能是一个基本问题,但请耐心等待。如何获取ORM查询中的当前对象。

 x = 'abc'
 sample = Sample.objects.filter( x__in = sample_obj.x_list )

sample_obj指的是Sample的所有对象。这里的 Sample 是一个具有 x_list:

的模型
class Sample(models.Model):
    x_list = ListTextField(
        base_field=models.CharField(max_length=20),
        size=10, max_length=(10 * 11))

所以基本上我想过滤,如果模型中的列表字段具有特定值。
编辑 :我会进一步澄清我的问题:假设有 3 个 Sample 对象,我想检查 Sample 对象的任何 [=16= 中是否有 x ].并将这些对象保存在变量 sample 中。设 x_list 为字符串列表。

您应该使用 __contains 查找而不是 __in:

样本 = Sample.objects.filter(x_list__contains=x)