基于这个查询:
@cars = Car.where("manufacturer_id IN ?", @mfts.select("id")).limit(30).select("id")
我该如何在视图中显示汽车ID,就像这样(或者我需要重新编写查询)?
3,2,5,12,15,24,34,63,64,65,66,85
非常感谢 - 我一直在寻找答案,但没有找到合适的问题/答案。
一个解决方案是执行以下操作:
#view
<% @cars.each do |c| %><%= c.id %>,<% end %>
我不确定是否有更好的方法处理这个问题 - 这显然会在列表末尾留下一个多余的逗号(这并不是致命的问题)。还有更优雅的解决方案吗?
[3,2,5,12,15].join(",")
即可。@cars.map(&:id)
实际上会返回包含 id 的数组。 - PeterWong