【问题标题】:Grails new Domain object with property map not setting property具有属性映射的 Grails 新域对象未设置属性
【发布时间】:2015-02-06 13:52:06
【问题描述】:

编辑:根据我在下面的回答,这似乎是由“grails clean”解决的。你沮丧地摇头,有时你会忽略显而易见的事情。

一段时间以来,我们的领域对象结构如下:

abstract class Company {

String name
...
}

和多个类似以下的子对象都具有不同的“所有者”对象。每个具体类在数据库中都有自己的表。

class CompanyChild extends Company {
static belongsTo = [owner:SomeDomain]
...
}

出于各种原因,我正在向抽象父级添加另一个属性,因此父级现在看起来更像以下(CompanyType 是一个枚举):

abstract class Company {

String name
CompanyType companyType
...
}

这一切看起来都很简单。现在在公司服务,某处我正在这样做:

log.debug("Saving new company type=$companyType")
def company= new Company(name: 'Acme', companyType: companyType, <other properties here>)
log.debug("company object has type=${company.companyType}")

日志显示...

CompanyService Saving new company type=NONPROFIT
CompanyService company object has type=null

这到底是怎么回事?看起来 ${company.companyType} 真的不应该为空。

如果我添加 company.companyType = 公司类型 创建对象后它可以工作,但有些东西我无法理解。

编辑:grails 版本是 2.3.11

【问题讨论】:

    标签: grails grails-2.3


    【解决方案1】:

    有时你太专注于一个你没有退后一步的问题......也许我需要做一个完整的“grails clean”......

    清理并重新编译似乎是我的答案。

    【讨论】:

      猜你喜欢
      • 2011-09-14
      • 1970-01-01
      • 2021-07-10
      • 1970-01-01
      • 1970-01-01
      • 2019-12-06
      • 2019-06-23
      • 2012-05-22
      • 1970-01-01
      相关资源
      最近更新 更多