我在控制器中有以下代码,用于获取一个位置到另一个位置之间的距离(以米为单位):
range = Geocoder::Calculations.distance_between([lat,lng],[Model.location.lat,Model.location.lng])
rangeInMeters = range * 1000
rangeRounded = rangeInMeters.round
rangeRounded = rangeRounded / 100 * 100
我在序列化器中添加了以下代码,以使JSON响应的输出更加友好:
class ModelSerializer < ActiveModel::Serializer
attributes :id, :name, :address, :range
def range
// something
end
end
如何使rangeRounded被ModelSerializer读取,以便在json响应中显示为以下形式:
{
"id": 1,
"name": "Name A",
"address": "Address A",
"range": 500
},
has_many :locations
def range puts @instance_options[:rangeRounded] end` - rony