Есть ли правильный способ изменить не зонтичный проект, чтобы использовать функцию зонтиков с инфраструктурой Phoenix?
Используя феникс фреймворк сейчас. В начале мы не использовали --umbrella
Возможность создания проекта. Таким образом, структура похожа на простое приложение зонтичного способа.
Теперь хочу изменить проект на umbrella
путь. Возможно ли это и как это сделать?
1 ответ
Начиная с Феникса 1.3 и эликсира 1.5:
Создайте новое зонтичное приложение в отдельном каталоге:
$ mix new my_umbrella --umbrella
Переместите ваше приложение Phoenix в apps/
каталог в новом зонтичном каталоге:
$ mv /path/to/my_app /path/to/my_umbrella/apps/
Ваш путь сборки, папка deps и основные файлы конфигурации и микширования теперь находятся в корне зонтика. Вам нужно будет добавить следующие строки в ваш project
функционировать в вашем фениксе mix.exs
указать на правильные места, как показано ниже:
# my_umbrella/apps/my_app/mix.exs
def project do
[
# ...
build_path: "../../_build",
config_path: "../../config/config.exs",
deps_path: "../../deps",
lockfile: "../../mix.lock",
# ...
]
end
Восстановите ваши зависимости от корня зонтика.
$ mix deps.get
Предполагая, что вы используете поздний завтрак, вам также нужно отредактировать assets/package.json
файл в папке приложения Phoenix, чтобы указать правильное местоположение для deps/
:
// my_umbrella/apps/my_app/assets/package.json
"phoenix": "file:../../../deps/phoenix",
"phoenix_html": "file:../../../deps/phoenix_html"
Возможно, вам придется обновить package-lock.json
файл для повторного запуска npm install
Команда, если используется последняя версия npm
,
Из корня зонтика вы сможете запустить свой сервер Phoenix.
$ mix phx.server