gpt4 book ai didi

ruby-on-rails - 在 Rails 应用程序中包含动态 json-ld 标签

转载 作者:行者123 更新时间:2023-12-03 09:14:49 29 4
gpt4 key购买 nike

我的 show.html.erb 中有以下代码片段

<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Person",
"name": "<%= @person_name %>",
"logo": "<%= @person_img_url %>",
"membersOf":[
{
<%= @person_orgs.each do |group| %>
"@context": "http://schema.org",
"@type": "Organization",
"name": "<%= group[:name] %>"
"logo": "<%= group[:img_url] %>",
"url": "https://siftery.com/groups/<%= group[:handle] %>"
<% end %>
}
]

}

我得到的 membersOf 的输出是 [{}{}{}] 结果不是一个数组,而是一个缺少逗号的字符串。我应该如何更正,使 membersOf[{},{},{}]

最佳答案

另一种方法是在 Ruby 中构建对象并转换为 JSON。这样做的好处是可以安全地转义所有参数并且看起来更干净。

<script type="application/ld+json">
<%=
{
:@context => "https://schema.org",
:@type => "Person",
:name => @person_name,
:logo => @person_img_url,
:membersOf => @person_orgs.map do |group|
{
:@type => "Organization",
:name => group[:name],
:logo => group[:img_url],
:url => "https://siftery.com/groups/#{group[:handle]}"
}
end
}.to_json.html_safe
%>
</script>

关于ruby-on-rails - 在 Rails 应用程序中包含动态 json-ld 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39020469/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com