2015-11-26 3 views
19

phoenix/elixirプロジェクトでは、ヘルパー機能を置くのに適した場所は何ですか?たとえば、私はTimexを使って日付を扱いますが、返された構造体にDBドライバ(1つはキー、もう1つは分など)を使用するためにいくつかの変換を行う必要があります。私は、すべてのモデルでこのコードを繰り返すことは望まないし、それを行う簡単な関数を書くだろう。これを置くのに良い場所は何でしょうか?/libフォルダ内のモジュール内にありますか?これを整理する方法に関するガイドラインはありますか?フェニックスプロジェクトにヘルパー関数を置く場所は?

答えて

34

ガイドラインはまだありません。 MyApp.TimexHelpersのようにトピックごとにグループ化したモジュールを作成し、実際にヘルパーを使用したい場所にモジュールをインポートすることができます。

1.2より前のフェニックスのlibwebの主な違いは、再読み込みの動作です。 libの変更を有効にするには、サーバーを再起動する必要があります。だから私は開発を容易にするためにほとんどのものをwebの下に置く傾向があります。たぶんweb/helpers ...

Phoenix 1.2以降、「lib /ディレクトリは、開発中のweb /と共にデフォルトでコードリロードされるようになりました。 Changelogを参照してください。

+12

完璧な答え。 –

関連する問題