如何在没有其他模式的情况下呈现具有多个记录的表单

时间:2018-04-30 14:01:47

标签: elixir phoenix-framework ecto

我需要创建一个表单,用户可以同时编辑Paper的多个记录。现在我正在使用嵌入式架构,所以Ecto可以为我做演员:

defmodule EmbSchema do
  embedded_schema do
    has_many :papers, Paper
  end

  def changeset(emb_schema, attrs) do
    emb_schema
    |> cast(attrs, [])
    |> cast_assoc(:papers, with: &Paper.classify_changeset/2)
  end

以及用于呈现表单的默认HTML帮助程序

<%= inputs_for f, :papers, fn p -> %>

唯一的问题是我收到警告

invalid association `papers` in schema EmbSchema: associated schema Paper does not have field `emb_schema_id`

这当然是正确的,但对我的用例无关紧要。

由于这感觉有点像黑客,还有其他方法来模拟这个吗?

0 个答案:

没有答案