我在我的Elixir应用程序中使用此方法获得图像计数:
Enum.each(0..23, fn(per_hour) ->
count = hour(camera_exid, date_unix, per_hour)
end)
我想将per_hour
和count
映射到Map
中,然后我可以将其传递给视图。格式为:
[%{hour: per_hour, count: count}, %{hour: per_hour, count: count}, ...]
Enum.each
只是对列表中的每个项目应用一个函数,它不返回任何东西。您应该使用 Enum.map/2
:
list = Enum.map 0..23, fn per_hour ->
%{
hour: per_hour,
count: hour(camera_exid, date_unix, per_hour)
}
end
假设您的方法/变量camera_exid
和date_unix
在作用域中可用,您的最终输出格式为:
[%{hour: per_hour, count: count}, %{hour: per_hour, count: count}, ...]