2015-12-29 10 views
8

this questionのアドバイスに従って、現在のプロジェクトの依存関係をiexにロードする方法について、私はphoenixフレームワークの依存関係をかなり生産的に扱うことができました。しかし、それはすべての単一の事のためのフェニックスプロジェクトの名前空間を提供しなければならなくて少し面倒です。IEX内のモジュール/ネームスペースのエイリアス

MyApp.Repo.all(MyApp.User)と入力するのではなく、Repo.all(User)を行うことができます。私はalias MyApp.Repo, as: Repoで個々に別名を付けることができますが、すべてを一度に行うための方法はありますか?

答えて

11

MyApp.Repo, as: Repoの代わりにalias MyApp.Repoを呼び出すだけで、モジュール名の最後の部分が使用されます。エリクシール1.2で

あなたは1回の通話で自分の名前に複数のサブモジュールを別名することができます:alias MyApp.{Repo, User}

また、あなたはあなたのエイリアスを設定するために使用することができます.iex.exsファイルのオプションがあります。あなたはhttp://elixir-lang.org/docs/v1.1/iex/IEx.htmlでそれについて読むことができます - あなたが命名の衝突を持つリスクを実行するので、この場合はお勧めしません。 iexセッションでaliasを呼び出す方がより明示的です。

+1

これはうまくいくようですね、ありがとう!私は、プロジェクトごとにiex.exsファイルのphoenixモデルをエイリアシングすると、あまりにも多くの衝突を危険にさらすことなく、私が必要とするものを正確に得ることができると思います。 –

関連する問題