我的一个索引中实际上有一个缓存的外键字段,称为thingy_ids,它只是一个逗号分隔的 id 列表,前面有thingy_id_。我想像这样使用它:
>>> sqs.filter(thingy_ids="thingy_id_133932,")
为了获得附有那个东西的结果。
这适用于我的本地机器,但不适用于 heroku。在 heroku 上,以下是令人困惑的结果:
>>> sqs = SearchQuerySet()>>>平方[0].thingy_ids呃,thingy_id_133932,thingy_id_133923,'>>> sqs.filter(thingy_ids="thingy_id_133932")[]
事实上,thingy_ids的过滤器似乎不起作用:
>>> sqs.filter(thingy_ids="1")[]>>> sqs.filter(thingy_ids="thingy_id")[]
编辑:啊哈!在逗号分隔的列表之间添加空格似乎可以解决问题。
我把这个问题留给开放状态,因为可能有更好的方法在索引中缓存这个外键关系并搜索它。思潮?
在逗号之间添加空格解决了这个问题,尽管我仍然不确定为什么。