繁体   English   中英

Django,如何使用2层外键过滤数据

[英]Django, How to filter data with 2-layers foreign key

我对如何获得正确的结果感到困惑...

这是模特

class StockInForm(models.Model):
    color = models.ForeignKey(Color, ...)

class Color(models.Model):
    color = models.CharField(...)
    supplier = models.ForeignKey(Supplier, ...)

class Supplier(models.Model):
    supplier = models.CharField(...)

给了我一个供应商关键字,我想要得到的是与关键字匹配的表格。 我已经尝试了很多次,但是不知道该怎么做。 我可以给我一些提示吗? 谢谢。


如果给我一个颜色关键字,则可以使用

StockInForm.objects.filter(**{"color__color" : keyword})

获取带有color关键字的所有表格。 但是当我这样使用时它不起作用

StockInForm.objects.filter(**{"color__color__supplier " : keyword})

我认为你需要做

StockInForm.objects.filter(color__supplier__supplier=keyword)

或者,如果您想使用字典:

StockInForm.objects.filter(**{"color__supplier__supplier " : keyword})

color__supplier__supplier您检查StockInForm 颜色字段。 它与Color Color检查供应商字段中。 Supplier模型有关,最后一个是检查供应商字段。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM