我正在尝试使用jbuilder gem来格式化json输出。
控制器
class LocationsController < ApplicationController
def tree
@locations = Location.all
end
tree.json.jbuilder
Jbuilder.encode do |json|
json.id @location.id
json.name @location.name
end
使用网址测试:
http://localhost:5000/locations/tree.json
结果:
Called id for nil, which would mistakenly be 4 -- if you really wanted the id of nil, use object_id
Extracted source (around line #2):
1: Jbuilder.encode do |json|
2: json.id @location.id
3: json.name @location.name
4: end
答案 0 :(得分:0)
您似乎没有在您发布的代码中定义@location
你应该迭代你的位置, jbuilder 让你这样做:
Jbuilder.encode do |json|
json.locations @locations do |location|
json.id location.id
json.name location.name
end
end
如果您想要平面阵列,请参阅docs。