10

按照这个问题中关于如何使用当前项目的依赖项加载 iex 的建议,我能够以非常高效的方式使用 phoenix 框架依赖项。然而,必须为每件事情提供 Phoenix 项目的命名空间有点乏味。

而不是打字MyApp.Repo.all(MyApp.User),我希望能够做到Repo.all(User)。我可以单独为每件事起别名,alias MyApp.Repo, as: Repo但有没有办法一次为所有事情做这件事?

4

1 回答 1

13

你可以简单地调用alias MyApp.Repo而不是MyApp.Repo, as: Repo——它将使用模块名称的最后一部分。

在 Elixir 1.2 中,您可以通过一次调用将多个子模块别名为它们自己的名称:alias MyApp.{Repo, User}

您还可以选择一个.iex.exs文件来设置别名(根据IEx 文档)。在这种情况下,我不推荐它,因为您冒着命名冲突的风险。alias在 iex 会话中调用更加明确。

于 2015-12-29T08:24:29.420 回答