是否有类似于Rails控制台的Phoenix

Cha*_*iam 89 elixir ecto phoenix-framework iex

我正在学习Phoenix和Elixir,我来自Ruby/Rails,我在REPL中工作,pry用来检查我的数据库和应用程序状态.

我正试图弄清楚如何在Phoenix应用程序中与我的数据库和模型进行交互.我知道iex,但我不知道如何使用它从repl检查我的应用程序的数据库.我是否需要每次从repl使用ecto连接到它?有没有rails console等价物.我检查了Phoenix文件,Elixir Dose和Ecto repo,但找不到我要找的东西.我错过了什么吗?

编辑:根据下面的答案,我发现了ecto文档的这一部分.基于此我可以做类似的事情ArticlesApi.Repo.all ArticlesApi.Article

Gaz*_*ler 113

您可以运行iex -S mixiex包含当前混合项目中的依赖项.您可以在http://elixir-lang.org/getting-started/mix-otp/introduction-to-mix.html上阅读此内容.

从那里你可以执行Ecto查询:

iex> MyApp.Repo.all(MyApp.User)
Run Code Online (Sandbox Code Playgroud)

运行iex -S mix phoenix.server也将启动凤凰服务器.

  • 值得注意的是,项目根目录中的`iex.exs`文件的便利性允许您设置别名(因此您不必在所有内容之前使用`MyApp.).一个例子是:`别名MyApp.Repo别名MyApp.User别名MyApp.Car` (7认同)
  • 有什么方法可以在生产环境中使用它吗? (2认同)
  • 从Phoenix 1.3开始,这实际上是`iex -S mix phx.server`。 (2认同)

Dev*_*oop 27

对于运行调试,(如byebugdebuggerpry在轨),使用

require IEx 在模型或控制器或视图文件的顶部,然后键入

IEx.pry 到你需要的地方在运行时暂停并继续调试.

键入h的控制台内的帮助

最重要的是,毕竟,重启服务器:

iex -S mix phoenix.server

更多信息:这里


Mar*_*bur 5

如果您从事开发工作,请使用iex -S mix phx.server.

如果您需要进入已部署版本的控制台,请转到您的发布目录并运行bin/<name of your app> remote_console以打开应用程序控制台的远程 shell。