我有一个抽象的超类报告和两个子类SimpleReport和ExtendedReport,我想将它们保存在数据库中。
如果创建了一个SimpleReport,它就会像预期的那样将标签"Report“和"SimpleReport”附加到上面。
用户可以修改这样的SimpleReport,这会导致SimpleReport变成ExtendedReport。
如果我现在保存这个ExtendedReport (使用与SimpleReport相同的ID,因为我只想更新它),那么它有标签"Report“、”SimpleReport“和"ExtendedReport”。
标签"SimpleReport“应在保存时删除。在保存更新的报告后,我正在使用密码查询删除错误的标签。
我是在问是否有更好的方法来存档这个文件,是否可能接近错误,或者这是否是ogm中的一个bug?
发布于 2016-09-17 01:31:59
标签的规则如下:
因此,如果从基类中删除抽象,或者添加@NodeEntity注释,您将看到所期望的结果。
编辑:
当类被重命名时,OGM不会删除标签。任何附加标签都保持原样。
@Labels注释声明一个字段,以管理从实体中添加/删除其他标签。https://stackoverflow.com/questions/39536968
复制相似问题