3

indexが定義されている場合にのみ、ループを作成しようとしています。しかし、erb は if 句内でループを処理できないようです。

<% if(@index) %>
index <% index_files.each do |i| %> <%= i %> <% end %>;
<% end %>

期待される結果: index index.html index.php または ""

私が得た構文エラー:

私のフラットなアプローチは期待どおりに失敗しました:

<% if(@index_files) %> try_files <% end %>  <% index_files.each do |i| %> <%= i %> <% end %>

index_files=>として定義undefしました。空の配列を定義した各ループが壊れました => 空の配列が定義されているため、機能しませんでした。

多分私は長さをチェックすることができindex_filesますか?それとも、問題を解決するためにまったく別の方法が必要ですか?

4

2 に答える 2

1

私は同じことをしていますが、nginxでも機能します;)。

例えば:<% if @proxy_ignore_headers %> proxy_ignore_headers<% proxy_ignore_headers.each do |i| -%> <%= i %><% end -%>;

それは魅力のように機能します。あなたとの唯一の違いは、if 条件に () を使用することですが、パペットは () をサポートしていると思います。奇妙な組み合わせを押して、見えない文字を生成したのかもしれませんが、コードをいじっています。念のため、すべてを最初から書いてみてください。

ここで完全なテンプレートを見ることができます

幸運を

于 2012-11-01T22:40:41.567 に答える
-1

一見すると、変更する必要があるだけです

index_files.each

@index_files.each
于 2012-11-01T04:15:24.760 に答える