Elixir Enum地图

时间:2017-02-03 10:24:47

标签: elixir phoenix-framework

我正在准备<%= select f, :subject_id, subjects_to_select(@all_subjects) %>的数据 subject_to_select的位置是:

def subjects_to_select(subjects) do
   subjects
   |> Enum.map(&{&1.title, &1.id})
   |> List.flatten
end

但是,是否可以不仅显示标题(在选择器中),还可以显示其他变量?从db我返回select: %{title: p.title, teacher: u.surname, lvl: p.lvl, id: p.id},我需要提供像lvl,title这样的东西。但是使用当前设置,我只能在选择器中看到标题。我检查了Enum on hex,但仍然很挣扎。任何帮助表示感谢,谢谢!

1 个答案:

答案 0 :(得分:1)

def subjects_to_select(subjects) do
  subjects
  |> Enum.map(&{"#{&1.title}/#{&1.lvl}", &1.id})
end

如果我正确地提出你的问题,我想这样的事情应该有用。