Kentico模块父/子关系 - 使用GUID代替ID作为父参考

时间:2015-09-23 14:53:01

标签: kentico

我在Kentico中设置了一个自定义模块,然后跟着this在模块中的类之间创建父/子关系。这很有效,我可以使用一切:

ChildParentID = {% ToInt(UIContext.ParentObjectID) %}

但是,我想使用父的GUID作为外键,而不是他们的ID。我能够为子进程配置info和info提供程序类,将父进程的GUID指定为外键,但是我无法弄清楚在检索子类时如何实际获取父GUID。我希望Kentico提供一个简单的宏,如:

ChildParentGUID = {% ToInt(UIContext.ParentObjectGUID) %}

但这并不存在,我不知道如何获取宏中父级的GUID。任何帮助将不胜感激,谢谢。

1 个答案:

答案 0 :(得分:3)

首先,我建议您重新考虑使用ID作为父参考。它会自动简化其他事情,例如自动删除子项,正确包含在导入/导出/暂存等中。

您可能只是没有正确设置这两个类的TypeInfo。

最典型的错误是你将父ID列为构造函数中的parentIdColumn,然后是ObjectDependencies,这会导致不必要的双重翻译。

你能在这里发布两个类的TypeInfo配置吗?

您还可以查看我的文章,尝试一下特定方案如何设置here

如果您坚持使用GUID作为父关系并且它适用于您,您可以使用以下内容获取相关的父GUID:

{% UIContext.EditedObjectParent.GUID %}