Rails json api只返回created_at和updated_at

我打开了一个json API来获取自行车的数据。 API工作正常,它返回json,但由于某种原因,它只返回某些字段,即created_at和updated_at字段。

这是我的数据库中的内容:

=> # 

这是我的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方法。 任何想法都是我错过’状态’和’位置’的原因

要进行调试,您可以将模型的结果输出到控制台to_json

 def show # Temporary debug, to be removed pp @bike.to_json respond_with(@bike) end 

无论您发现什么,我建议您使用render而不是respond_with来解决您的问题,如下所示:

 def show render json: @bike end