Какова предпочтительная структура кода / директории для расширенных модулей? - PullRequest
0 голосов
/ 04 июля 2019

Что эквивалентно каталогу Rails /lib в Фениксе? а как код там должен быть структурирован?

Ответы [ 2 ]

0 голосов
/ 08 июля 2019

С Что входит в Rails lib / :

Сгенерированный Rails README провозглашает:

lib - Библиотеки приложений. В принципе, любой вид обычая код, который не принадлежит контроллерам, моделям или помощникам. это каталог находится в пути загрузки.

Руководство по Rails гласит:

app/ Содержит контроллеры, модели, представления, помощники, почтовые программы и активы для вашего приложения.

lib/ Расширенные модули для вашего приложения.

Другими словами, app/ это для «настройки Rails», и lib/ - это код, который будет иметь смысл даже если ваше приложение было перенесено на консоль или приложение Android для экземпляр.

Эквивалентный каталог в Фениксе будет: your_app/lib/your_app.

а как там код должен быть структурирован?

Все модули, определенные в каталоге /lib смешанного проекта, доступны в любом другом файле вашего проекта как ModuleName.func_name(). Phoenix in Action помещает открытый интерфейс для вашего приложения в your_app/lib/your_app.ex с остальными файлами в каталоге your_app/lib/your_app/.

0 голосов
/ 04 июля 2019

Код должен быть структурирован как любое другое приложение Elixir.

Цитата взята из документации по Phoenix Framework Добавление страницы раздел.

Наш каталог lib / hello_web содержит веб-файлы - маршрутизаторы, контроллеры, шаблоны, каналы и т. Д. Остальная часть нашего лучшего приложения Elixir находится в lib / hello, и вы структурируете код здесь, как любое другое приложение Elixir.

...