そこで私は Locomotive、Ruby on Rails CMS、およびそのエディターを使用してブログを作成しています。Locomotive バックエンドで、ブログ投稿を含むスラッグ「posts」を使用してモデルを作成しました。次に、私の index.liquid ファイルで、モデルの内容をループして全体を表示しようとしています。
液体ループは次のとおりです。
{% for post in contents.posts %}
{{ post.title }}
{% endfor %}
しかし、「/ での NoMethod エラー」、「contents
nil:NilClass の未定義メソッド」が表示されます。for...in ループから .posts を削除すると、エラーは発生しませんが、ループするcontents
ことはできないため、当然、ループは 1 回も発生しません。
ドキュメントを読みましたが、コードは機能するはずです。データがないかのように動作するのはなぜですか?
2012 年 12 月 11 日更新: コードを実際の機関車エンジンにプッシュすると、完全に動作しますが、エディターだけがこのエラーをスローします。エディターを使用して、ブラウザーではなく IDE からコードを編集できるようにします。
2012 年 12 月 12 日更新: これは機関車エディターが意図したものではないことがわかりました。ウェブサイトの作成中にダミーのデータベースを使用し、それをエンジンにプッシュして独自のデータベースで使用することになっています。