问题标签 [ancestor]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
748 浏览

java - How to delete whole child entities by ancestor?

I'd like to reduce the number of queries to delete entities in Google App Engine. I already know how to delete them with ancestor as below sequences.

  1. Set an ancestor to query and fetch them.
  2. Convert entities to keys and delete them using keys.

I'd like to remove first step. My expectation is deleting all entities by ancestor without fetching as below.

DELETE FROM DS1 WHERE ancestor is "PARENT"

Is it possible?

0 投票
0 回答
680 浏览

join - 在 Apache solr 中加入查询:如何获取分层数据中的所有级别

我有一个 Solr4 索引,表示具有以下相关字段的内容之间的子->父关系:

  • item_id
  • im_endpoints_source_node$nid
  • im_endpoints_target_node$nid

其中item_id是关系 id,im_endpoints_source_node$nid是父文档 id 的多值字段,im_endpoints_target_node$nid是子文档 id 的多值字段。

每个文档可能有几个孩子和几个父母。

我想选择特定文档的所有祖先或后代关系。

假设我有这样的结构:

我可以通过以下选择查询获得所有直接父关系:

这给出了以下结果:

以及具有以下选择查询的第二级祖先关系(祖父母关系):

这给出了以下结果:

有没有办法在一个查询中获取文档的所有祖先(从级别 1 到级别 N)?

仅供参考:这个索引是使用 Drupal 的 Search API Solr 模块和 Relation 模块创建的。它包含约 500k 个文档的 300k 多个关系。

任何帮助将不胜感激。

0 投票
1 回答
173 浏览

jquery - Jquery .find 和简单的祖先和后代之间的空格有什么区别?

$("div .product"); 就我所见,选择具有 div 祖先的产品类别的元素 $("div").find(".product"); 完全相同。

两者都适合我。我想知道我应该使用哪个来简化我的代码?

0 投票
1 回答
2155 浏览

xpath - Xpath 获取具有分类文本的第一个祖先

我试图找到具有特定@id的元素的第一个祖先,其中祖先具有包含文本的元素“metaCategory”......

如此伪:带有@id = XXXX 的元素-> 获取第一个祖先其中metaCategory text() 不为空

希望这是有道理的。

结构示例:

0 投票
1 回答
2142 浏览

java - 在java中查找两个节点的最小共同祖先

我在stackoverflow上查看了很多其他答案,但找不到任何有效的方法,我要么得到根,要么返回node1本身,我不知道如何递归地执行此操作,并尝试了很多次都结束了同样的方法。任何帮助将不胜感激!

这是我的代码:

我对其进行了编辑以制作每个节点的祖先列表,但我不确定如何检查每个节点以查看列表中的元素是否匹配,因为它们通常大小不同。

继承人的新代码:

0 投票
2 回答
31 浏览

ruby - Ruby祖先链中的方法访问有什么问题

我已经定义了一个方法,里面有几个类和几个模块。从其中一个类中,我尝试调用在模块中定义的方法(在公共模块中),但出现访问错误。这是完整的层次结构:

我得到的错误是:Top::NestedModule:Module 的未定义方法'method_name'

0 投票
1 回答
68 浏览

xslt - 如何找到上一级以上的祖先

我需要检查 XSLT 中的条件,其中 parent_of 'c' 应该是 'b' 但 'c' 的祖先不应该是 'a'?我怎样才能做到这一点?

0 投票
3 回答
967 浏览

list - 带有列表的 Prolog 祖先

我四处寻找,找不到答案。我在制作家谱清单时遇到了麻烦。

所以,我有一些 is_a 关系,例如:

我想要一个执行以下操作的程序:

基本上,如果我给它一个输入(牛),那么它将从牛到动物,并将每一步添加到列表中。

到目前为止,我有这个:

这个的输出是

我怎样才能让它成为一个列表?

编辑:

在查看建议后,我已将其更新为此。但是,如何获取要打印的列表?我仍然是序言的新手。findall 页面说它会返回列表,但对我来说并没有这样做。

编辑:

它现在返回一个空列表。我不确定这里有什么问题。我根本没有改变代码,所以输出不应该改变,但它已经改变了。

编辑:

感谢 MrBratch 的回复。我做了建议的更改,但我现在有另一个问题。例如,如果我有以下关系:

但我只想要从小牛到真棒的道路。该代码将为我提供来自小牛,x 的所有可能路径。例如,

会给我一个列表 Y 有

但我想要的是

如何过滤其他路径?并添加起点?我想我可以将小牛作为头部附加到开头,但是如何忽略其他路径?

编辑:

感谢您的帮助,我想通了,但是我丢失了结束路径和开始路径。例如,L 包含牛,酷。但是calf和awesome都不在。我尝试追加,但我并不真正理解语法。我不允许追加(X,L,新列表)?

0 投票
2 回答
125 浏览

google-app-engine - GAE 中的分片祖先实体

我正在从事一个基于 GAE 的项目,该项目涉及大量用户群(可能是数百万用户)。我们使用 Datastore 来实现持久性。用户将通过用户名和电子邮件地址来识别,因此这两个属性在所有类型的实体中应该是唯一的。因为 Datastore 不支持 ID 以外的唯一字段,所以我们需要事务来确保新用户注册时这些字段的唯一性。为了进行交易,用户实体需要包含在实体组中。

正如这里所指出的,不建议拥有大型实体组。因此,考虑到可能存储的大量用户,我正在考虑将它们放入多个较小的实体组中。每个组将有一个共同的父级,其 ID 由两个唯一字段(例如 MD5 总和的一部分)生成。插入新用户可能如下所示(在 Python 中):

我在这个解决方案中看到的一个问题是,仅通过 ID 获取用户是不可能的。我们必须使用完整的实体键。

这种方法还有其他缺点吗?有人尝试过类似的东西吗?

编辑

正如我在评论中指出的那样,上述哈希值无法正常工作,因为它只会阻止注册具有非唯一电子邮件的用户以及与这些电子邮件匹配的非唯一用户名。如果哈希是基于单个字段计算的,它将起作用。

尽管如此,我发现这种分片的概念本身很有趣,也许值得讨论。

0 投票
1 回答
481 浏览

xquery - xquery:从父级向上选择几个级别的祖先

我正在尝试选择父节点之前的 <li> 祖先节点的值。这是文档的示例,im-trg.xml:

这是我的查询:

我正进入(状态:

对于 <documentType>,我只想选择 <a> 的 <li> 父级之前的祖先 <li>,它指示文档的类型,所以我想要:

我不认为我可以从根上下来,因为父 <li> 有时是双重嵌套的,有时是三重嵌套的。