我有一个数据表表,它通过查询接收数据,然后使用RABL格式化。 这一切都很有效,直到我的搜索找不到任何行。 然后我得到....处理消息,没有更新。 我很困惑RABL。有没有办法看看它在做什么?
这是我的data.rabl文件
object false
node(:iTotalRecords){@iTotalRecords}
node(:iTotalDisplayRecords){@iTotalDisplayRecords}
child(@aaData, :object_root => false) do
attributes :school_name => "1",
:student_name => "3",
:paid => "4",
:short_name => "5",
:emailed => "6",
:reconciled => "9"
node("6") do |p|
if p.emailed == 0
'false'
else
'true'
end
end
node("0") do |p|
p.created_at.to_date
end
node("2") do |p|
schedule = p.enrollment.schedule
link_to(p.klass_name, schedule_path(schedule))
end
node("3") do |p|
link_to(p.enrollment.student.name, student_path(p.enrollment.student_id))
end
node("7") do |p|
p.enrollment.rate
end
node("8") do |p|
p.enrollment.paid
end
node("10") do |p|
link_to("Edit", edit_payment_path(p), :class => 'btn btn-info btn-mini')
end
end
答案 0 :(得分:2)
我需要做的是确保json包含一个名为:payments的字段。 如果没有数据,则子循环没有被执行,因此RABL没有理由生成:付款字段。
我发现您可以通过创建别名来强制执行此操作。 所以我添加了代码:
child :payments => :payments
在行
之前child(@aaData, :object_root => false) do
现在效果很好。