【发布时间】:2018-09-30 22:30:30
【问题描述】:
我有一张地图:
allowed_lookup = %{coordinate: "15.0", id: 1}
我想用这个映射来做一个 Ecto 查询来过滤掉数据库中的一些条目。
我在想这样的事情:
Enum.reduce(allowed_lookup, Project.Models.Grid,
fn {x,y}, query ->
IO.puts "#{inspect x} , #{inspect y}"
query = where(query, [q] , q.x == ^y)
end)
queryset = Project.Repo.all(query)
所以它将递归地应用地图中存在的所有过滤器来获取查询集。 但是此代码无效,因为 q.x 未转换为 q.coordinate 或 q.id 。
【问题讨论】: