如何抑制使用 jbuilder 创建的 json 中的空数组
How do I suppress empty arrays from json created using jbuilder
我在 _schema.json.jbuilder
中有以下 ruby 代码
json.member_of @dispenser.organizations do |organization|
json.set! "@type", "Organization"
json.name organization.name
end
问题出在分配器没有组织时生成的json:
"memberOf":[]
jbuilder 可以处理这个(使用配置设置),还是我应该将整个事情包装在一个条件中,比如 if @dispenser.organizations.present?
您应该可以设置:
json.ignore_nil!
在数组上,使用:
member_of.presence
应将空数组转换为 nil,然后忽略。
我在 _schema.json.jbuilder
json.member_of @dispenser.organizations do |organization|
json.set! "@type", "Organization"
json.name organization.name
end
问题出在分配器没有组织时生成的json:
"memberOf":[]
jbuilder 可以处理这个(使用配置设置),还是我应该将整个事情包装在一个条件中,比如 if @dispenser.organizations.present?
您应该可以设置:
json.ignore_nil!
在数组上,使用:
member_of.presence
应将空数组转换为 nil,然后忽略。