我有一个模板,它接受一个对象数组,并且对于每个对象,它需要呈现一个部分模板。结果以空对象的形式返回。知道代码中的错误吗?
控制器
def index
render text: render_to_string(template: 'users.json.jbuilder', locals: {:@uses : users}
end
users.json.jbuilder
json.array! @users do |user|
json.partial! 'user.json.jbuilder', { user: user}
end
user.json.jbuilder
Jbuilder.encode do |json|
json.id user.id
json.username user.user_name
end
结果
[{},{},{},{},{},{},{},{},{},{},{},{},{},{}]
答案 0 :(得分:2)
user.json.jbuilder
表示Jbuilder.encode do |json|
已被召唤。
因此,您的user.json.jbuilder
文件将按以下方式运行:
json.id user.id
json.username user.user_name
就是这样......故事结束:)