1
我的模型需要有相同類型的多個枚舉:應堅持域模型W在GORM/Grails的工作不枚舉/列表
class Broker {
static constraints = {
brokerTypes(nullable:false)
}
List<BrokerType> brokerTypes
}
該模型被實例化從請求,其中有PARAMS在它BrokerTypes列表:
def save(){
def brokerInstance = new Broker(newParams)
System.out.println(brokerInstance.getBrokerTypes().toString());
if (!brokerInstance.save(flush: true)) {
render(view: "create", model: [brokerInstance: brokerInstance])
return
}
redirect(action: "show", id: brokerInstance.id)
}
中的println打印出預期BrokerTypes的名單,所以我知道它的存在的實例。後來,該模型被檢索如下:
def brokerInstance = Broker.findByLatAndLon(lat,lon)
System.out.println(brokerInstance.getBrokerTypes().toString());
這一次的println打印出「空」
所以我想這個問題是格姆不知道如何存儲枚舉的這份名單中,並而是調用brokerInstance.save()時,將其brokerTypes字段保存爲空。
我是否需要創建一個映射讓GORM識別列表?黑客的替代方案是代替存儲枚舉列表,存儲字符串列表或其他東西,然後在需要時映射回枚舉,但這看起來並不乾淨
一切似乎都正確,必須工作。我有類似的域名 - 一切都很好。 PS另外,你可以把它寫成'println brokerInstance.brokerTypes' – 2012-02-08 11:49:12