2016-12-05 76 views
0

我正在研究使用Amnesia包:https://github.com/meh/amnesiaElixir + Phoenix:我在哪裏放置應用程序初始化程序?

除了定義我的數據庫/模式之外,還有一項需求正在運行Amnesia.start。我想在初始化程序中執行此操作。來自Rails,這應該會進入config/intiailizers/

我在哪裏可以將這一行放在Phoenix應用程序中?

+0

你可以在'mix.exs'的應用程序函數中添加'amnesia'.So Amnesia將在你開始你的應用程序時開始 – TheAnh

+0

oooo這是什麼意思?這只是在引擎蓋下調用'[[package name]]。 – Edmund

+2

是的!你可以在這裏閱讀更多關於混音項目的內容:http://elixir-lang.org/docs/stable/mix/Mix.html – TheAnh

回答

0

即使軟件包沒有啓動代碼,您也應該始終將應用程序名稱放在mix.exs文件的應用程序列表中。如果您使用類似exrmdistillery的軟件包來構建產品發佈版,它將需要列出您的軟件包,以便將它們構建到發行版中。

此外,如果您想啓動創建基於otp的進程,則需要在應用程序文件lib/my_project.ex中啓動它們。你應該在那裏看到一些樣板,如worker(MyProject.MyAwsomeService, [])