Каков соответствующий артефакт для Config.groovy из grails 2.x в grails 3.x? - PullRequest
0 голосов
/ 29 декабря 2018

Я хочу перенести приложение из Grails 2.4.4 в Grails 3.3.9.Поскольку структура каталога conf в grails 2.x полностью отличается от 3.x, в 3.x больше нет config.groovy.В config.groovy из 2.x я использовал для определения списков констант для моих полей выбора, например:

  metals=['au','ag','pl']    

, и я получал к ним доступ через

static List getMetals() {
    grails.util.Holders.config.metals
}    

в своем коде Groovy.

Каков соответствующий путь в 3.x?

1 Ответ

0 голосов
/ 29 декабря 2018

Я бы начал с ознакомления с руководствами по обновлению:

http://docs.grails.org/latest/guide/upgrading.html

http://docs.grails.org/3.2.0/guide/upgrading.html#upgrading2x

config.groovy, по умолчанию становится application.yml, но выможет преобразовать это в application.groovy, и в плагине внешнего конфига есть скрипт, который поможет с этим:

http://plugins.grails.org/plugin/grails/external-config

В общем, практика использования держателей обратно сохраняется, было бы лучше использовать либо внедренный компонент / службу GrailsApplication grailsApplication

grailsApplication.config.etc

, либо подключить компонент с помощью ресурсов.Единственная причина использовать держатели в другом объекте, который находится за пределами грааля, и по какой-то причине вы не можете подключиться как боб.В этих случаях теперь есть класс Holders, с которого вы можете получить конфигурацию.Вот некоторые другие способы получить доступ к конфигурации из блога OCI:

http://grailsblog.objectcomputing.com/posts/2016/08/31/retrieving-config-values.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...