首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >保存实体没有正确地更新类等级标签。

问保存实体没有正确地更新类等级标签。
EN

Stack Overflow用户
提问于 2016-09-16 17:18:11
回答 1查看 140关注 0票数 1

我有一个抽象的超类报告和两个子类SimpleReport和ExtendedReport,我想将它们保存在数据库中。

如果创建了一个SimpleReport,它就会像预期的那样将标签"Report“和"SimpleReport”附加到上面。

用户可以修改这样的SimpleReport,这会导致SimpleReport变成ExtendedReport。

如果我现在保存这个ExtendedReport (使用与SimpleReport相同的ID,因为我只想更新它),那么它有标签"Report“、”SimpleReport“和"ExtendedReport”。

标签"SimpleReport“应在保存时删除。在保存更新的报告后,我正在使用密码查询删除错误的标签。

我是在问是否有更好的方法来存档这个文件,是否可能接近错误,或者这是否是ogm中的一个bug?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-17 01:31:59

标签的规则如下:

  • 默认情况下,层次结构中的任何普通具体类都会生成一个标签。
  • 默认情况下,普通抽象类不会生成标签。
  • 默认情况下,普通接口不会生成标签。
  • 任何带有@NodeEntity或@NodeEntity(label="something")注释的类都会生成一个标签
  • 不得允许空或空标签。
  • 不能持久化的类/层次结构必须用@瞬态注释。

因此,如果从基类中删除抽象,或者添加@NodeEntity注释,您将看到所期望的结果。

编辑:

当类被重命名时,OGM不会删除标签。任何附加标签都保持原样。

  • 您可以使用直接数据库访问手动删除这些内容。
  • 您可以使用@Labels注释声明一个字段,以管理从实体中添加/删除其他标签。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39536968

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档