2012-04-04 6 views
0

Hier ist mein Code in meiner Index Ansicht Vorlage:Helper-Methode löst in do-Schleife auf Heroku ‚kann nicht gleich Null in String konvertieren‘ nur

<% @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 %> 

Es läuft auf meinem lokalen Entwickler-System in Ordnung, aber nicht auf Heroku in Pro & Entwicklungsumgebungen. Ich bekomme:

"TypeError... can't convert nil into String"

formatted_uwi ein einfacher Helfer, die die location.uwi Eingabeformate. Wenn ich nur 'location.uwi' anrufe oder eine tatsächliche Zeichenkette an ihrem Platz benutze, funktioniert es gut und zeigt den rohen location.uwi-Wert an, so dass ich weiß, dass es kein Nullwert ist. Ich habe sogar versucht, location.uwi.to_s.

Sehr seltsam. Ich kann diesen Helfer auf der Show anrufen, bearbeiten und andere Ansichten und es funktioniert gut. Es schlägt nur in der do-Schleife UND auf Heroku fehl.

+0

Ok ... es wird wierder. @locations ist ein Suchergebnis, das auf der in einer Sitzung gespeicherten Beziehung "companies_id" der Benutzer basiert (die ich verifiziert habe). Wenn ich zu einem Benutzer ohne Standorte (über company_id) wechsle, funktioniert dieser Code, weil es keine Orte zum Durchlaufen gibt. Ein Benutzer mit Standorten schlägt auf dem Nullpunkt fehl. Was ich noch nicht versucht habe, ist, den Helfer aus dem link_to herauszuziehen, um zu sehen, ob das ein Teil des Problems ist. –

Antwort

0

Nicht sicher, was ich tat, aber ich ging zurück durch meinen Helfer, um die Null zu fangen, und es scheint jetzt zu arbeiten.

Verwandte Themen