Django管理员网址过滤器无法正常运行

时间:2018-07-06 10:31:14

标签: django django-admin django-admin-filters

我已经构建了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个对象的查询集。

1 个答案:

答案 0 :(得分:0)

我正在回答我自己的问题,因为Django社区似乎对这些问题不太活跃。

我找到了答案here。问题在于,查询字符串显然不应该包含方括号中的IN子句的值。因此,表达式应为:http://localhost:8000/admin/fantoddcc/rnaextracts/?biosamples__biosamplesetid__in=57,52,51,50,49

不客气。