【问题标题】:Django ORM filter by singular field nameDjango ORM 按单数字段名过滤
【发布时间】:2021-10-23 23:32:43
【问题描述】:

是否可以通过一些额外/单一版本的字段名称来过滤模型?

例如,使用类似模型(其中authorsCharField,其中包含python-list,例如['Johnny']):

class Movie(models.Model):
title = models.CharField(max_length=100, null=False, blank=False)
actors = models.CharField(max_length=250, null=True, blank=True)

并查询类似Movie.objects.filter(input) 的内容,其中输入为<QueryDict: {'actor': ["['Johnny']", "['Pablo']"]}>

有人知道怎么解决吗?

提前致谢。

【问题讨论】:

    标签: django django-models django-rest-framework django-orm


    【解决方案1】:

    按照您制作模型的方式,您需要将演员保存为字符串,例如Johnny, Pablo。因此,您可以进行Movie.objects.all().filter(actors='Johnny, Pablo') 之类的查询。

    通常,这应该使用many-to-one relationship model 完成,让您查询特定对象,让您查询多个参与者或一个本地参与者。

    【讨论】:

      猜你喜欢
      • 2017-07-02
      • 2020-10-23
      • 2021-07-11
      • 1970-01-01
      • 2015-05-04
      • 2019-07-06
      • 2016-06-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多