Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在服务器上用Phoenix/Elixir填充数据库?_Elixir_Phoenix Framework - Fatal编程技术网

如何在服务器上用Phoenix/Elixir填充数据库?

如何在服务器上用Phoenix/Elixir填充数据库?,elixir,phoenix-framework,Elixir,Phoenix Framework,我用的是肝脏。如何在服务器上的Phoenix/Elixir中插入种子(填充数据库)?我知道有一种方法是运行Phoenix控制台。应该是这样的吗? 我不想要一个你认为有效的方法,但是很久以前没有尝试过或尝试过的方法 如果有另一种不涉及肝水肿的方法,也可以 混合运行priv/repo/seeds.exs在服务器上不起作用。检查文件/priv/repo/seeds.exs。 您可以在其中编写任何您想要的内容,并使用 mix run priv/repo/seeds.exs 编辑:对于edeliver

我用的是肝脏。如何在服务器上的Phoenix/Elixir中插入种子(填充数据库)?我知道有一种方法是运行Phoenix控制台。应该是这样的吗? 我不想要一个你认为有效的方法,但是很久以前没有尝试过或尝试过的方法

如果有另一种不涉及肝水肿的方法,也可以


混合运行priv/repo/seeds.exs
在服务器上不起作用。

检查文件
/priv/repo/seeds.exs
。 您可以在其中编写任何您想要的内容,并使用

mix run priv/repo/seeds.exs 
编辑:对于edeliver,人们通过以下方法报告成功:

因此,您可以使用bin/your_app remote_控制台连接到节点 然后键入如下内容:

:code.priv_dir(:your_app) |> Path.join("repo/seeds.exs") |> Code.require_file()
运行种子文件

而且:

它起作用了,但我不得不将“Code.require_file()”替换为“Code.eval_file()”。“require_file”只会冻结控制台,不会显示错误


查看文件
/priv/repo/seeds.exs
。 您可以在其中编写任何您想要的内容,并使用

mix run priv/repo/seeds.exs 
编辑:对于edeliver,人们通过以下方法报告成功:

因此,您可以使用bin/your_app remote_控制台连接到节点 然后键入如下内容:

:code.priv_dir(:your_app) |> Path.join("repo/seeds.exs") |> Code.require_file()
运行种子文件

而且:

它起作用了,但我不得不将“Code.require_file()”替换为“Code.eval_file()”。“require_file”只会冻结控制台,不会显示错误


@アレックス 你能详细说明一下吗?您应该能够ssh到服务器上并在那里运行相同的命令<代码>sshname@server“cd location&&mix run priv/repo/seeds.exs”我不想要一种方法,这种方法应该适合您的意见,但很久以前没有尝试过。@Johannes我没有使用过,但我相信edeliver不会将您的代码发送到服务器。只有在
priv/
中没有包含任何对我有用的内容的版本。请确保先停止服务器并导出MIX_ENV=prod。是否可以发布错误消息?编辑:在阅读了@JustinWood的答案后,我开始理解这个问题。这样的话,我再看看@アレックス 你能详细说明一下吗?您应该能够ssh到服务器上并在那里运行相同的命令<代码>sshname@server“cd location&&mix run priv/repo/seeds.exs”我不想要一种方法,这种方法应该适合您的意见,但很久以前没有尝试过。@Johannes我没有使用过,但我相信edeliver不会将您的代码发送到服务器。只有在
priv/
中没有包含任何对我有用的内容的版本。请确保先停止服务器并导出MIX_ENV=prod。是否可以发布错误消息?编辑:在阅读了@JustinWood的答案后,我开始理解这个问题。这样的话,我再看看。