我有用户模型,我希望用户列表为json,我希望length of name
以及每个用户的响应,但我不知道如何做到这一点?我尝试过如下所示,但导致double render
错误。如果我从循环中获取respond_to,则它不返回任何内容。所以请帮助我。
@users = User.all
@users.each do |user|
length = user.name.count
respond_to do |format|
format.json { render json: @users.to_json(:include => [:length]) }
end
end
我希望回复像
[{ “用户”:{ “名称”:asgd, “ID”:1, “长度”: “4”}},{ “用户”:{ “名称”:asdfg, “ID”:2, “长度”: “5”}}]
答案 0 :(得分:1)
尝试:
@users = User.all
all_users = Array.new
@users.each do |user|
all_users << {"id" => user.id, "name" => user.name,"length" => user.name.size}
end
respond_to do |format|
format.json { render json: all_users.to_json }
end