Elixir 为什么这段代码会因exto.NoPrimaryKeyValueError而失败
为什么会失败:Elixir 为什么这段代码会因exto.NoPrimaryKeyValueError而失败,elixir,ecto,Elixir,Ecto,为什么会失败: %Partner{} |> cast(%{id: 123}, [:id]) |> delete 带有exto.NoPrimaryKeyValueError?我正在显式设置主键?对于变更集,原始结构(data)中的id由Repo使用。删除,而不是changes中的,并且cast仅将新的id放入变更。您可以将更改合并到原始结构中(数据): 或者手动将id放入%Partner{}: %Partner{id: 123} |> delete 回答很好,新的长生不老药
%Partner{} |> cast(%{id: 123}, [:id]) |> delete
带有
exto.NoPrimaryKeyValueError
?我正在显式设置主键?对于变更集,原始结构(data
)中的id
由Repo使用。删除,而不是changes
中的,并且cast
仅将新的id
放入变更
。您可以将更改
合并到原始结构中(数据
):
或者手动将id
放入%Partner{}
:
%Partner{id: 123} |> delete
回答很好,新的长生不老药,解决了我的问题。这个答案向我解释了什么是变更集实际上相当好。
%Partner{id: 123} |> delete