2017-10-30 10 views
0

埋め込まれたスキーマでMoney.Ecto.Typeを使用しようとすると、私はこのエラーを取得しています:それは基本となるフィールドは整数でなければなりませんと言うドキュメントで組み込みスキーマでEctoでMoneyを使用していますか?

cannot load `%{"amount" => 69999, "currency" => "USD"}` as type Money.Ecto.Type for field `amount` 

が、私はAに格納しています地図。

embeds_many :price, Price do 
    field :amount, Money.Ecto.Type 
    field :date, Timex.Ecto.DateTime 
end 

なぜこれが機能しないのか、ちょっと混乱しています。私はローダーのどこかでインポートが行方不明ですか?それとも、私が組み込みスキーマを使用しているからですか?

答えて

0

Money.Ecto.Typeは、ドキュメントで指定されている整数が必要です。

あなたは、基礎となるデータベースのフィールド用のカスタムタイプを使用する必要が正である場合は、Money.Ecto.Map.Typeタイプを使用するか、Ectoの複合型を自分で実装することのどちらかです。

More info異なるデータベースにカスタムタイプを使用する場合。

関連する問題