UndefinedFunctionError - phoenix / ecto 中的 iex 别名
UndefinedFunctionError - iex aliasing in phoenix / ecto
当我启动时
iex -S mix phoenix.server
我希望能够 运行 命令,例如:
iex(1) > Repo.all(MyModel)
但是,这给了我这个错误:
(UndefinedFunctionError) undefined function: Repo.all/1 (module Repo is not available)
如果我在我的调用前加上我的项目名称,它会起作用:
iex(1) > ProjectName.Repo.all(ProjectName.MyModel)
如何避免在 iex 中使用我的项目名称作为调用前缀?
如果您将代码添加到文件 .iex.exs
,只要您在该目录中启动 iex
,它就会被执行。因此,如果您将其添加到您的 .iex.exs
:
alias ProjectName.{Repo, MyModel}
您将能够以 Repo
的身份访问 ProjectName.Repo
,以 MyModel
的身份访问 ProjectName.MyModel
。
当我启动时
iex -S mix phoenix.server
我希望能够 运行 命令,例如:
iex(1) > Repo.all(MyModel)
但是,这给了我这个错误:
(UndefinedFunctionError) undefined function: Repo.all/1 (module Repo is not available)
如果我在我的调用前加上我的项目名称,它会起作用:
iex(1) > ProjectName.Repo.all(ProjectName.MyModel)
如何避免在 iex 中使用我的项目名称作为调用前缀?
如果您将代码添加到文件 .iex.exs
,只要您在该目录中启动 iex
,它就会被执行。因此,如果您将其添加到您的 .iex.exs
:
alias ProjectName.{Repo, MyModel}
您将能够以 Repo
的身份访问 ProjectName.Repo
,以 MyModel
的身份访问 ProjectName.MyModel
。