【问题标题】:Grails 3.3: transient properties and GrailsDomainClassPropertyGrails 3.3:瞬态属性和 GrailsDomainClassProperty
【发布时间】:2018-01-06 19:36:53
【问题描述】:

考虑将插件从 Grails 3.2.11 升级到 Grails 3.3.2,同时适应域类 API 的大幅更改。 PersistentProperty 替换了 GrailsDomainClassProperty,但没有 isPersistent() 方法。

如果域类属性是瞬态的,如何以编程方式查明? PersistentEntity 是否会返回瞬态属性?

(我经常使用瞬态属性。非常适合提高生产力。)

【问题讨论】:

    标签: grails grails-3.3


    【解决方案1】:

    PersistentEntity.getPersistentProperties() 将为您提供要持久化的属性列表 - 这意味着它不包括瞬态属性。你可以试试:

    GrailsClassUtils.getStaticPropertyValue(MyDomain, "transients")?.contains("myPropertyName")
    

    【讨论】:

    • Yes and no... 任何 getter 方法都会产生瞬态属性,无需将其包含在“瞬态”中。如果包含,当然,您的建议有效。
    • “任何 getter 方法都会产生瞬态属性” - 这不是真的。
    猜你喜欢
    • 1970-01-01
    • 2011-07-20
    • 2011-09-16
    • 1970-01-01
    • 2023-03-29
    • 2011-11-23
    • 2011-12-23
    • 2011-02-10
    • 1970-01-01
    相关资源
    最近更新 更多