【问题标题】:Django objects filter by parameter name [duplicate]Django对象按参数名称过滤[重复]
【发布时间】:2016-11-22 15:33:35
【问题描述】:

我的方法接受一个字符串参数,它基本上是一个 db 列的名称。

我可以这样做吗:

  original_message = "Let it go"   
  language = "english"
  ads = Ad.objects.filter(language=original_message)

其中语言不是名称,而是对字符串的引用?如果其他行,这将为我节省很多

【问题讨论】:

  • 是的,但我之前搜索过类似的问题,但没有出现。因此,我将无法回答问题和答案。我的问题非常具体,我相信很多用户会发现它很有用
  • 也许更好的副本会有所帮助? How to dynamically provide lookup field name in Django query?
  • 是的。一样
  • 你想更新重复的问题,以便我可以标记它解决了我的问题吗?
  • 我无法修改我已投票结束的内容,但我相信其他人可能希望投下赞成票。很高兴它有所帮助!

标签: python django database


【解决方案1】:

过滤器接受关键字参数列表,因此您可以利用它来发挥自己的优势 - 再加上解包

original_message = "Let it go"   
language = "english"
ads = Ad.objects.filter(**{language:original_message})

【讨论】:

  • 哇,让我试试吧。谢谢老兄,速度很快!
  • 不用担心......我宁愿让它作为副本关闭,所以如果它被关闭,我会删除这个答案
  • 看我上面的评论
猜你喜欢
  • 1970-01-01
  • 2010-09-25
  • 1970-01-01
  • 2021-11-07
  • 2015-06-21
  • 2011-02-12
  • 1970-01-01
  • 2016-08-09
  • 1970-01-01
相关资源
最近更新 更多