我在使用elasticsearch dsl删除项目时遇到问题。当我试图过滤我的数据时,它很容易,像这样的东西效果很好。
def searchId(fileId):
s = Search().filter('term', fileId=fileId)
# for hit in s:
# print(str(hit.foreignKey))
response=s.execute()
# print(response.hits.total)
return response
扫描也可以:
def scanning():
s = Search()
i = 0
for hit in s.scan():
if hit.domain == 'Messages':
i+=1
print(str(hit.fileId) + " : " + str(hit.domain) + " : " + str(i))
但是当我想删除这样的项目时:
def deleteId(fileId):
s = Search().query('match', fileId=fileId)
response = s.delete()
return "Done"
我出错了:
Traceback (most recent call last): File "", line 1, in File "/home/o.solop/DataSearchEngine/datasearch/elasticapp/search.py", line 96, in deleteId response = s.delete() File "/usr/local/lib/python2.7/dist-packages/elasticsearch_dsl/search.py", line 660, in delete **self._params File "/usr/local/lib/python2.7/dist-packages/elasticsearch/client/utils.py", line 73, in _wrapped return func(*args, params=params, **kwargs) File "/usr/local/lib/python2.7/dist-packages/elasticsearch/client/__init__.py", line 887, in delete_by_query raise ValueError("Empty value passed for a required argument.") ValueError: Empty value passed for a required argument.
我在搜索构造函数中错过了一个索引。我应该这样做:
def deleteId(fileId):
s = Search(index='my_index_name').query('match', fileId=fileId)
response = s.delete()
Elasticsearch ch-dsl
使用delete_by_queryAPI,如我的错误消息中所示,它需要知道针对哪个索引执行删除。
您好,我正在尝试在我的Web服务中运行一个查询,但是一个查询在范围内的函数会从零开始中断。 我的代码: 错误: 获取请求失败请求失败-- 类型异常报告 Message内部服务器错误 描述服务器遇到内部错误,无法满足此请求。 例外 javax.servlet.ServletException:java.lang.NullPointerException 根本原因 JAVAlang.NullPoint
我已经实现了一个,可以在其中添加和删除项目。我希望添加的项目添加到第二个位置,并且每当我添加新项目时,动画运行良好。也就是说,最后一个项目向下移动,让新项目的空间淡入。 当我删除一个项目时,有一个问题我不知道如何解决。我希望它的行为是: < li >淡出删除的元素, < li >向上移动它下面的所有项目。 实际发生的事情是,首先,最后一项消失,然后动画的其余部分发生。当已删除元素下方的项目向上移动
问题内容: Heroku上的Postgres 9.3.2。 可以肯定的是我只是个白痴,但是我似乎无法弄清楚为什么我的语法错误。 问题答案: 是Postgres中的保留关键字。如果要引用名为 user 的 实际 表,则必须将其用引号引起来: __ 如果可以的话,最好不要使用保留关键字作为表名。通常最终会在以后产生一些奇怪的问题。 可能是一个更好的表名。
我有以下一段代码: 我想过滤掉来自另外两个机器人的无意义的机器人信息。 然而,这会导致bot删除服务器上的每个用户的消息。 用户“臭墨水”的消息被删除了。
问题内容: 我有一个JTable,我需要删除一行,即选定的行。 所以首先,我得到表模型: 然后是选定的行(如果选择了第二行,则返回1,这是可以理解的,因为行从零开始): 然后,我尝试删除该行: 然后我再次设置表模型: 这实现的是删除完全随机的行。我根本不明白为什么。我已经使用table.setRowSorter(sorter)对表进行了排序,但是我不知道为什么这应该是一个问题。如果绝对需要SSCC
我在jpa删除传播中遇到了一些奇怪问题:我有一个对象A,它与对象C有一对多关系。我有另一个对象B,它与对象C有一对一关系(A-C和B-C),当我试图删除一个'a'对象时,然后Hibernate删除它,而不删除它的C对象。但在此之前,它尝试使用第二个关系商店选择C对象 以下是日志: 下面是我的代码: 在类中: 在B类中: 在C类中: