【问题标题】:Filter queryset by checking element entrance in array in django通过在 django 中检查数组中的元素入口来过滤查询集
【发布时间】:2018-05-15 18:55:29
【问题描述】:

我有一个电影模型,它有流派数组,其中包含流派模型的 id。如何通过检查电影模型数组中的某个流派 id 条目来过滤电影?

就像

Film.objects.filter(genres__in=[1, 4, 7])

反之亦然。

Film.objects.filter(genres__has=genre_id)

【问题讨论】:

  • Film.objects.filter(genres__id__in=genres_array)

标签: python django database


【解决方案1】:

如果genresManyToManyField 关系,您可以过滤字段

Film.objects.filter(<b>genres=</b>genre_id)  # movies with at least genre_id

在这种情况下,Django 将在多对多关系表上执行JOIN,并在genre_id 上过滤该表,因此我们获得流派集合至少包含@987654327 的电影@我们过滤。

【讨论】:

    猜你喜欢
    • 2015-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-04
    • 2011-06-11
    • 2019-12-04
    • 2020-08-22
    相关资源
    最近更新 更多