1

次のエラーが表示されます。

undefined method `each_pair' for []:Array

Rails erbビューでハッシュを反復しようとすると:

<% @result.each_pair do |k, v| %>
  <li><%= k %></li>
<% end %>

普通の Ruby では問題なく動作します。何か案は?

4

2 に答える 2

3

エラー メッセージによると、 Array@resultである必要があります。メソッドが定義されていません。(メソッドはHashなどで定義されています。)each_paireach_pair

これを試して:

<% @result.each do |v| %>
  <li><%= v %></li>
<% end %>
于 2012-12-11T11:58:07.083 に答える
2

あなたはどちらも正しいです(もちろん)。私が使用していた最初のページの読み込みで

@result = []

データが入力された後にのみハッシュになります。

使用する

@result = Hash.new

すべてを修正

無駄な投稿すみません

于 2012-12-11T11:59:42.297 に答える