Html 在网站上显示带有EBR的YAML变量
我正在从事一个项目,其中数据存储在带有不同变量的YAML文件中,并使用ERB显示在网页上。我似乎无法显示“des”变量内容,但我知道当我检查时,picu caption class语句正在网站上显示 我已经设法使用ERB显示了两个不同的YAML变量(stats),如下所示: 亚马尔 雇员再培训局 雇员再培训局Html 在网站上显示带有EBR的YAML变量,html,yaml,erb,Html,Yaml,Erb,我正在从事一个项目,其中数据存储在带有不同变量的YAML文件中,并使用ERB显示在网页上。我似乎无法显示“des”变量内容,但我知道当我检查时,picu caption class语句正在网站上显示 我已经设法使用ERB显示了两个不同的YAML变量(stats),如下所示: 亚马尔 雇员再培训局 雇员再培训局 我希望des变量显示在网站上,但当我尝试执行ERB代码时,没有显示任何内容您的YAML不是您所认为的: photos: - url: project-photos/bus-1.jp
我希望des变量显示在网站上,但当我尝试执行ERB代码时,没有显示任何内容您的YAML不是您所认为的:
photos:
- url: project-photos/bus-1.jpg
- des: "hi"
- url: project-photos/bus-2.jpg
- des: "o"
photos
的值是一系列映射。第一个映射有一个带有值的键url
;第二个映射有一个带有值的键des
,依此类推
但是,您显示的代码假定列表中的每个项目实际上都有一个url
和一个des
键。为此,您需要将url
和des
放在相同的映射中,如下所示:
photos:
- url: project-photos/bus-1.jpg
des: "hi"
- url: project-photos/bus-2.jpg
des: "o"
请注意缺少的
-
。-
启动一个新的列表条目。请注意,没有YAML变量。在中使用单词变量的唯一时间是在示例文档中。因此,你肯定是混淆了概念,这很可能是无法解决问题的原因。“des”是由单个键值对组成的映射中的一个键,它是四项序列中的第二项,其本身就是键“photos”的值。这是这个YAML文档的根级别映射的单个键值对。
photos:
- url: project-photos/bus-1.jpg
- des: "hi"
- url: project-photos/bus-2.jpg
- des: "o"
<% if project.photos %>
<% project.photos.each do |i| %>
<figure>
<%= image_tag i.url %>
</figure>
<span class="pic_caption"><%= i.des %></span>
<% end %>
<!-- </div> -->
<% end %>
photos:
- url: project-photos/bus-1.jpg
- des: "hi"
- url: project-photos/bus-2.jpg
- des: "o"
photos:
- url: project-photos/bus-1.jpg
des: "hi"
- url: project-photos/bus-2.jpg
des: "o"