我已经打开了一个json API来获取有关自行车的数据。 API工作正常,因为它返回json,但由于某种原因,它只返回某些字段,即created_at和updated_at字段。
这是我的数据库中的内容:
=> #<Bike id: 1, status: "available", location: 0, model: nil, created_at: "2015-02-04 08:21:27", updated_at: "2015-02-04 08:21:27", network_id: nil>
这是我的API返回的内容:
{"id":1,"created_at":"2015-02-04T08:21:27.183Z","updated_at":"2015-02-04T08:21:27.183Z"}
这是我的控制器代码:
before_action :set_bike, except: [:index, :create]
respond_to :json
def show
respond_with(@bike)
end
def set_bike
@bike = Bike.find(params[:id])
end
def bike_params
params.require(:bike)
.permit(:status, :model, :network => [:name], :location => [:latitude, :longitude])
end
我的路线默认为json。在我的自行车模型中没有额外的as_json方法。任何想法,为什么我失踪&#39;状态&#39;和&#39; location&#39;
答案 0 :(得分:1)
要进行调试,您可以使用
将模型的结果输出到控制台to_jsondef show
# Temporary debug, to be removed
pp @bike.to_json
respond_with(@bike)
end
无论您发现什么,我建议您使用render
代替respond_with
来解决您的问题,例如:
def show
render json: @bike
end