在Django中过滤对象值

时间:2018-09-04 07:23:10

标签: python django

我的signal.py中包含以下代码:

student.detailinfo_set.all().filter(inf="204X1001")

studentdetailinfo是models.py中的两个模型,它们之间具有多对多关系。

当我从Signals.py将student.detailinfo_set.all().filter(inf="204X1001")打印到文件时,得到以下输出:

<DetailInfo: 700101 -  Jack Marcher/2018-09-19/Trans X101 / 204X1001 / Pro/Y2>
<DetailInfo: 700101 -  Jack Marcher/2018-09-21/Trans X1 / 204X22 / Pro/Y2>
<DetailInfo: 700101 -  Jack Marcher/2018-09-11/Trans X102 / 204X1001 / Pro/Y2>
<DetailInfo: 700101 -  Jack Marcher/2018-09-10/Trans X1 / 204X22 / Pro/Y2>

我只想过滤每行的第4列“ 204X1001”,这样它将只在文件中打印2行。


由Daniil Mashkin回答如下:student.detailinfo_set.all().filter(inf="204X1001")在我的代码中的用法错误。 正确的用法是student.detailinfo_set.filter(inf="204X1001")

1 个答案:

答案 0 :(得分:2)

要过滤查询,您应该使用filter方法。如果4th column的名称类似于fourth_column,则应使用以下代码。

student.detailinfo_set.filter(fourth_column="204X1001")