尝试将Money.Ecto.Type与嵌入式架构一起使用时出现此错误:
cannot load `%{"amount" => 69999, "currency" => "USD"}` as type Money.Ecto.Type for field `amount`
在文档中,它说底层字段应该是一个整数,但我将它存储在地图中。
embeds_many :price, Price do
field :amount, Money.Ecto.Type
field :date, Timex.Ecto.DateTime
end
我有点困惑为什么这不起作用。我是否在装载工作的某个地方错过了导入,或者仅仅是因为我使用的是嵌入式模式?
答案 0 :(得分:0)
Money.Ecto.Type
需要一个整数,如文档中所述。
如果您是肯定的,您需要为基础数据库字段使用自定义类型,您要么使用 Money.Ecto.Map.Type
类型,要么实现Ecto
的复合输入你自己。
More info关于为不同数据库使用自定义类型。