私は仲介者を使用して静的サイトで作業しており、mmのローカルデータ機能を使用しようとしています。
現在、仲介者プロジェクトのソースディレクトリ内に必要なデータディレクトリがあります。
データディレクトリ内にはyamlファイル(home.yml)があります
ファイルの構造は次のとおりです。
slides:
- image: "/img/slider/slide1.jpg"
image_alt: "Slide 1 alt text"
caption: "Slide 1 caption"
- image: "/img/slider/slide2.jpg"
image_alt: "Slide 2 alt text"
caption: "Slide 2 caption"
次に、次のようにhtml.erbファイル内のこれらのスライドをループしようとしています。
<%= data.home.slides.each do |s| %>
<figure class="slide">
<%= image_tag(s[:image], alt: s[:image_alt]) %>
<figcaption><%= s[:caption] %></figcaption>
</figure>
<% end %>
しかし、仲介者はコンパイルされたhtmlファイルにNoMethodErrorを吐き出します。
#<Middleman :: CoreExtensions :: Data :: DataStore:0x4383918>の未定義のメソッド `home'
何が間違っているのかわかりません。データディレクトリをソースフォルダの外のレベルに移動しようとしましたが、何もしませんでした。
仲介者がデータディレクトリの横にあるhome.ymlフォルダを認識していないようです。仲介者のデータ機能の文書化やサポートの方法があまりないことがわかったので、これに関する助けは大いにありがたいです。