0
ここに私のインデックスビュー・テンプレートで私のコードであるHerokuの上でループを実行します。ヘルパーメソッドはで「文字列の中にnilを変換することはできません」スローだけ
<% @locations.each do |location| %>
<tr>
<td><%= link_to formatted_uwi(location.uwi), location_path(location) %></td>
<td><%= location.name %></td>
<td><%= location.created_at %></td>
<td>
<%= link_to 'Edit', edit_location_path(location), :class => 'btn btn-mini' %>
<%= link_to 'Destroy', location_path(location), :method => :delete, :confirm => 'Are you sure?', :class => 'btn btn-mini btn-danger' %>
</td>
</tr>
<% end %>
それは私の地元のdevのシステム上の細かい動作しますが、Herokuのに失敗しましたプロの&開発環境です。私が取得:
"TypeError... can't convert nil into String"
formatted_uwi
はlocation.uwi入力をフォーマットし、単純なヘルパーです。私が 'location.uwi'と呼んだり、実際の文字列を使用したりすると、うまく動作し、生のlocation.uwi値が表示されるので、ゼロ値ではないことが分かります。私もlocation.uwi.to_sを試しました。
非常に奇妙です。私はショー、編集、および他のビューでこのヘルパーを呼び出すことができ、それは正常に動作します。それはdoループとHerokuでのみ失敗します。
よろしくお願いします。 @locationsはセッションに格納されているユーザーのcompany_id関係に基づいた検索結果です(これは動作確認済みです)。場所がないユーザー(company_id経由)に切り替えると、ループする場所がないため、このコードが機能します。ロケーションのあるユーザーがゼロで失敗します。 私がまだ試していないのは、それが問題の一部であるかどうかを確認するためにlink_toからヘルパーを引き出すことです。 –