假设我有数据:
data = [[key: 1, value: "1"], [key: 2, value: "2"] ,[key: 3, value: "3"]]
child_data = %{1: [key: 1, value: "exists"]}
和html:
<%= select f, :corporation_id, data %>
<%= select f, :company_id, child_data[Ecto.changeset.get_field(@changeset, :corporation_id)] %>
我的架构和变更集如下所示:
embedded_schema do
field :corporation_id, :integer
field :company_id, :integer
end
def changeset(selected_org, attrs) do
selected_org
|> cast(attrs, [:corporation_id, :company_id])
|> validate_required([:corporation_id, :company_id])
end
问题如下:当我更改company
变更集的数据时没有更新,旧的 id 仍然存在,它仍然是一个有效的变更集。据我了解,这是因为更新数据时没有发出验证事件。
这个问题有解决方法吗?