【发布时间】:2015-09-03 21:45:20
【问题描述】:
我在 Grails 中为 列表映射(key 是一个 Integer 但 values 是 List 的映射)添加了一个行为。如果key 不存在,我将插入Integer key 和一个value。但如果key 存在,我想将values 连接为List / 而不是替换现有的value。
/**
* E.g.
* [1: [123, 456, 789], [2: [987, 654, 321]]]
*/
LinkedHashMap.metaClass.multiPut << { key, value ->
delegate[key] = delegate[key] ?: [];
delegate[key] += value
}
我的问题是:
我应该把它放在 Grails 的什么地方? 放在 Bootstrap.groovy's init 或 AST Transformation 中(如果是,怎么做?)?
【问题讨论】: