【发布时间】:2023-03-10 07:55:01
【问题描述】:
我想将对象列表呈现为 JSON,但我不想使用 to_json,因为我想呈现非常特定的格式和信息子集。
这是我的看法 (foo.json.erb):
{
"id" : <%= @user.id %>,
"progress" : [
<% @rewards_tapped[0..-2].each do |reward| %>
<%= render "rewardprogress", :reward => reward,
:user => @user %>,
<% end %>
<%= render "rewardprogress", :reward => @rewards_tapped.last,
:user => @user %>
]
}
如您所见,它非常难看,因为我必须单独渲染 @rewards_tapped 中的最后一项,以便它在条目后没有逗号(以生成有效的 JSON)。
必须有更好的方法来做到这一点,我只是对 Ruby 有点陌生。有人能指出我正确的方向吗?
【问题讨论】:
标签: ruby-on-rails ruby json list