我有一个名为Shipments的模型,它有字符串数据类型列:place_of_origin,place_of_loading,place_of_delivery。
我有另一个名为Places的模型,其中包含城市名称。
因此,在新货件页面中,我想为原产地,装货地点和place_of_delivery创建一个下拉菜单。这3个选择菜单应该从Places表中提取信息。
我已经尝试了不同的代码组合,但我无法弄明白http://rubydoc.info/github/justinfrench/formtastic/master/Formtastic/Inputs/SelectInput
我使用了collection => Places.all
,但它打印的内容类似于#< 0xPlaces00000>我知道我很接近,但还是想不通。
答案 0 :(得分:2)
因此,如果Places是具有字段'name'的模型,您将使用以下语法:
:collection => Places.all.map(&:name).uniq
这将做两件事,它将构建一个包含Places的所有“名称”的数组,并确保它是一个唯一的数组(删除重复的项目)。
所以基本上你想要在选择框中的任何列中的列,将其放在地图调用中的'name'位置。