Ruby on rails Rails-如何删除散列中的最后一个逗号

Ruby on rails Rails-如何删除散列中的最后一个逗号,ruby-on-rails,geojson,Ruby On Rails,Geojson,我每个人都有一个: { "type": "FeatureCollection", "features": [ <% @pois.each do |poi| %> { "type": "Feature", "geometry": { "type": "Point", "coordinates": [<%= poi.longitude %>, <%= poi.latitude %> ] }, &l

我每个人都有一个:

{
  "type": "FeatureCollection",
  "features": [
   <% @pois.each do |poi| %>
   {
    "type": "Feature",
    "geometry": {
      "type": "Point",
      "coordinates": [<%= poi.longitude %>, <%= poi.latitude %> ]
   },
 <% end %>
 ]
}

没关系,我只想删除最后一个逗号;)

我猜想您正在尝试创建/编辑某种类型的JSON对象

不应以这种方式处理JSON对象。 而是使用ActiveModel::Serializer


由于您可能对将一个数组转换为另一个数组感兴趣,因此可以使用
map
而不是
each
,即

{
  "type": "FeatureCollection",
  "features": 
   <% @pois.map do |poi| %>
     {
       "type": "Feature",
       "geometry": {
         "type": "Point",
         "coordinates": [<%= poi.longitude %>, <%= poi.latitude %> ]
       }
     }
   <% end %>
}
{
“类型”:“FeatureCollection”,
“特点”:
{
“类型”:“功能”,
“几何学”:{
“类型”:“点”,
“坐标”:[,]
}
}
}

这是散列吗?那是什么?那在哪里?你为什么要这么做?这是一个Geojson;)@你可以编译一个包含这些细节的字符串数组,然后用“,”连接数组。然后将没有尾随逗号。
user = User.find(1)
user.as_json
# => { "id" => 1, "name" => "Konata Izumi", "age" => 16,
#     "created_at" => "2006/08/01", "awesome" => true}

ActiveRecord::Base.include_root_in_json = true

user.as_json
# => { "user" => { "id" => 1, "name" => "Konata Izumi", "age" => 16,
#                  "created_at" => "2006/08/01", "awesome" => true } }
{
  "type": "FeatureCollection",
  "features": 
   <% @pois.map do |poi| %>
     {
       "type": "Feature",
       "geometry": {
         "type": "Point",
         "coordinates": [<%= poi.longitude %>, <%= poi.latitude %> ]
       }
     }
   <% end %>
}