我已经构建了URL http://localhost:8000/admin/myapp/rnaextracts/?biosamples__biosamplesetid__in=[57,52,51,50,49]
来链接另一个管理页面。该链接指向一个列表视图,该列表由URL中传递的表达式过滤。
但是,Django重定向到适当的管理员列表视图,但是查询更改为?e=1
(我认为这表明某种错误),并且显示了未过滤的列表。
我已经在Django shell中尝试了过滤器表达式,并且可以使用:qs = RnaExtracts.objects.filter(biosamples__biosamplesetid__in=[57,52,51,50,49]
。它返回一个带有416个对象中的52个对象的查询集。
答案 0 :(得分:0)
我正在回答我自己的问题,因为Django社区似乎对这些问题不太活跃。
我找到了答案here。问题在于,查询字符串显然不应该包含方括号中的IN子句的值。因此,表达式应为:http://localhost:8000/admin/fantoddcc/rnaextracts/?biosamples__biosamplesetid__in=57,52,51,50,49
不客气。