Kentico:如何让选定父页面(在页面选择器中)的子项成为单选择器?

时间:2017-07-18 14:08:54

标签: kentico

我有一个小部件配置,其属性中包含以下设置: enter image description here 当用户通过页面选择器选择 Page 并且现在想要选择 Tiles 时,我想在Uni Selector的选择网格中显示 Page 的所有子项。我怎样才能做到这一点?

我试图添加一些"其中"条件但到目前为止没有运气。

1 个答案:

答案 0 :(得分:1)

您通常可以通过宏访问其他字段 {%Page.Value%}或者如果不起作用,则{%Fields [“Page”]。值%}

首先尝试这些,具体取决于页面返回的内容(通常页面选择器返回GUID,因此您的where条件必须基于该条件)。

另一个注意事项是对象类型CMS.document可能不包含CMS_Tree数据。不建议您选择文档,因为工作流程之类的事情,因为选择树节点更安全,因为只有1个“节点”,其中可以有许多文档(语言变体)。

如果您将Tiles切换为Node,那么其中的位置为:

 NodeParentID = (Select top 1 NodeID from CMS_Tree where NodeGUID = '{% Page.Value %}')

如果您需要保留文档,那么您需要

DocumentNodeID in (SELECT NodeID FROM CMS_Tree where NodeParentID = (Select top 1 NodeID from CMS_Tree where NodeGUID = '{% Page.Value %}'))

最后,如果您尝试创建多对多关系,我现在正在完成多对多选择器工具,以便您可以使用自定义绑定类。如果你想早点,请给我发消息@ devtrev.com