各値に対してインデックスをチェックしてブレッドクラムを作成するループがあります。このデータは、各スラッグを配列内の別々のハッシュとしてレンダリングに渡します。現在、私は多くの "+"メソッドエラーではありませんが、私はどのようにラインがスリムに見えるように意図されているのか分かりません。この行の目的は、ブレッドクラム配列をループし、ブレッドクラムのスラッグを前のものに繰り返し追加し、使用可能なURLを作成する前にスラッシュを繰り返すことです。誰もがこれを表示する正しい方法を知っていますか?Ruby/Slim concatenation
コード:
.c-fg
ol.crumb
- properties[:breadcrumbs].each_with_index do |breadcrumb, index|
- url += "/" + breadcrumb[:slug]
li
a[href="#{url}" title="#"]
= breadcrumb[:place]
エラーメッセージ:
undefined method `+' for nil:NilClass
'url'を空の文字列に初期化します。今は 'url'は' nil'で、 'nil'オブジェクトで' + = 'を呼び出すことはできません –
あなたはRailsを使っていると想定するのは安全でしょうか?もしそうなら、Slimは基本的にRailsのショートカットに親しみやすくなりました。この場合、link_toを使用してください。より読みやすくなります。 例: '= link_to" How it Works "、how_it_works_path、title: 'whatever' class: 'whatever'' – borbesaur