如何通过终端向Ecto存储库添加记录? (IEX)

时间:2016-04-19 01:14:46

标签: elixir phoenix-framework

我在Phoenix Framework应用程序中有一个帖子模型。

我想通过终端添加记录。在Rails中,我可以在rails控制台中执行以下操作:

u = Post.create title: "My Title", content: "Here's my content..."

在IEX中与此相当的是什么?

3 个答案:

答案 0 :(得分:3)

Phoenix Documentation中找到答案。

在IEx中,我可以这样做:

post = %MyApp.Post{title: "My Title", content: "Here's my content..."}

其次是:

MyApp.Repo.insert post  

答案 1 :(得分:3)

首先,您需要使用

启动elixir终端
iex -S mix

让你有-S mix或不知道它不会。

运行iex后,您只需要为模块设置别名(以便于访问)

alias MyApp.Repo
alias MyApp.Post

设置别名后,您就可以随心所欲地做任何事了。只需通过以下方式对所有帖子进行测试:

Repo.all(Post)

如果没有错误(UndefinedFunctionError) 那么您只需插入数据:

Repo.insert(%Post{title: "My Title", content: "Here's my content..."})
希望它会对你有所帮助。 :d

答案 2 :(得分:0)

首先,您需要启动phoenix iex:

iex -S mix phoenix.server

然后查询Ecto:

post = %MyApp.Post{title: "My Title", content: "Here's my content..."}