Elixir Phoenix-(ErlangError)erlang错误::“无法加载模块”

Elixir Phoenix-(ErlangError)erlang错误::“无法加载模块”,elixir,phoenix-framework,Elixir,Phoenix Framework,我有一个简单的Phoenix频道来处理消息的WebSocket。我尝试向数据库中添加模型插入,但在传入这些消息参数时出现了此错误 def handle_in("new:msg", msg, socket) do message_params = %{"body" => msg["body"]} changeset = Message.changeset(%Message{}, message_params) case Repo.insert(changeset) do

我有一个简单的Phoenix频道来处理消息的WebSocket。我尝试向数据库中添加模型插入,但在传入这些消息参数时出现了此错误

def handle_in("new:msg", msg, socket) do
  message_params = %{"body" => msg["body"]}
  changeset = Message.changeset(%Message{}, message_params)

  case Repo.insert(changeset) do
    {:ok, room} ->
      broadcast! socket, "new:msg", %{user: msg["user"], body: msg["body"]}
      {:reply, {:ok, %{msg: msg["body"]}}, assign(socket, :user, msg["user"])}
    {:error, changeset} ->
  end
end
这里是错误。任何关于这可能是什么的想法都是非常受欢迎的

Repo.insert(%Ecto.Changeset{action: nil, changes: %{body: "feaflje"}, constraints: [], errors: [], filters: %{}, model: %PulseApi.Message{__meta__: #Ecto.Schema.Metadata<:built>, body: nil, id: nil, inserted_at: nil, room: #Ecto.Association.NotLoaded<association :room is not loaded>, room_id: nil, updated_at: nil}, optional: [], opts: [], params: %{"body" => "feaflje"}, repo: nil, required: [:body], types: %{body: :string, id: :id, inserted_at: Ecto.DateTime, room_id: :id, updated_at: Ecto.DateTime}, valid?: true, validations: []})

我必须将项目名称添加到正确的名称空间Repo中,才能使其正常工作

Repo必须是ProjectName.Repo

case PulseApi.Repo.insert(changeset) do
  {:ok, room} ->
    broadcast! socket, "new:msg", %{user: msg["user"], body: msg["body"]}
    {:reply, {:ok, %{msg: msg["body"]}}, assign(socket, :user, msg["user"])}
  {:error, changeset} ->
end