Attempting to insert %Geo.Multipoint{}
struct into the db. When casting my changeset, I get the following error message (UndefinedFunctionError) function Geo.PostGIS.Geometry.equal?/2 is undefined or private
.
My code is as follows:
defmodule HeatMap do
use Ecto.Schema
import Ecto.Changeset
schema "heat_maps" do
field :name, :string
field :geometry, Geo.PostGIS.Geometry
timestamps()
end
@doc false
def changeset(map, attrs) do
map
|> cast(attrs, [:name, :geometry])
|> validate_required([:name, :geometry])
end
end
# Error happens here
HeatMap.changeset(
%HeatMap{},
%{
name: "Some Map",
geometry: %Geo.MultiPoint{
coordinates: [{-73, 40}],
srid: 4326
}
}
)
Has anyone encountered this problem? How can I go about making Ecto.Changeset happy?