【发布时间】:2016-01-06 19:56:23
【问题描述】:
我正在尝试允许传入字段名称并在 Ecto 查询表达式中动态运行它,如下所示:
def count_distinct(query, field_name) when is_binary(field_name) do
query
|> select([x], count(Map.fetch!(x, field_name), :distinct))
end
但是,我得到这个编译错误:
(Ecto.Query.CompileError) `Map.fetch!(x, field_name)` is not a valid query expression
有没有办法做到这一点?
【问题讨论】: