将 jBuilder 输出分配给变量
Assigning jBuilder output to a variable
我在 Rails 上有一个使用 jbuilder 的应用程序 Ruby。我正在使用 jbuilder 来帮助呈现 json 响应。有没有办法在不渲染结果的情况下将 jbuilder 部分分配给变量?我一直在尝试执行类似下面的操作,但出现此 undefined method 'key' for nil:NilClass
错误。看来我没有正确地将用户模型传递给 user.json.jbuilder
谁能提供任何帮助?
context = ActionController::Base.new.view_context
user_json = JbuilderTemplate.new(context) do |json|
json.partial! "/users_api/user.json.jbuilder", user: user
end.target!
您可以 return Jbuilder 中的 JSON 直接与 JbuilderTemplate
结合 .target!
,但文件名需要以下划线开头。以和下划线开头的文件名表示它是部分文件,这意味着它不能直接呈现。
参考资料(, )
Return JSON 直接(调用 _user.json.jbuilder
)
context = ActionController::Base.new.view_context
user_json = JbuilderTemplate.new(context) do |json|
json.partial! "/users_api/user.json.jbuilder", user: user
end.target!
渲染 JSON(调用 user.json.jbuilder
调用 _user.json.jbuilder
)
render "/users_api/user.json.jbuilder"
user.json.jbuilder
json.partial! "/users_api/user.json.jbuilder", user: @user
_user.json.jbuilder
json.email user.email
json.name user.name
我在 Rails 上有一个使用 jbuilder 的应用程序 Ruby。我正在使用 jbuilder 来帮助呈现 json 响应。有没有办法在不渲染结果的情况下将 jbuilder 部分分配给变量?我一直在尝试执行类似下面的操作,但出现此 undefined method 'key' for nil:NilClass
错误。看来我没有正确地将用户模型传递给 user.json.jbuilder
谁能提供任何帮助?
context = ActionController::Base.new.view_context
user_json = JbuilderTemplate.new(context) do |json|
json.partial! "/users_api/user.json.jbuilder", user: user
end.target!
您可以 return Jbuilder 中的 JSON 直接与 JbuilderTemplate
结合 .target!
,但文件名需要以下划线开头。以和下划线开头的文件名表示它是部分文件,这意味着它不能直接呈现。
参考资料(
Return JSON 直接(调用 _user.json.jbuilder
)
context = ActionController::Base.new.view_context
user_json = JbuilderTemplate.new(context) do |json|
json.partial! "/users_api/user.json.jbuilder", user: user
end.target!
渲染 JSON(调用 user.json.jbuilder
调用 _user.json.jbuilder
)
render "/users_api/user.json.jbuilder"
user.json.jbuilder
json.partial! "/users_api/user.json.jbuilder", user: @user
_user.json.jbuilder
json.email user.email
json.name user.name