Das Projekt, an dem ich gerade arbeite, hat folgende Codes in der Ansicht
<%= product.provider.name %>
der obige Code ermittelt den "Anbieter" für ein Produkt und zeigt seinen Namen an. Aber meine Frage war manchmal dieser Code fehlschlägt, wenn "Anbieter" bekommt nil. (Ich weiß, seine wenig un-usual, aber da ich mit einer Legacy-DB arbeiten dies geschieht)
Also, um die Null-Validierung zu überprüfen, habe ich den folgenden Code (in meinem ApplicationHelper) geschrieben
def t(obj, attr)
obj.nil? ? "" : obj.send(attr.to_sym)
end
Jetzt mache ich etwas in der Art
<%= t(product.provider, "name") %>
Obwohl dies funktioniert, bin ich auf ein anderes Problem gestoßen: Ich habe folgenden Code gefunden
<%= product.provider.provider_type.title %>
Das Problem dabei ist, dass im obigen Code entweder "provider" oder "provider_type" gleich Null sein kann.
Was ich suche, ist ein Mechanismus zur Behandlung von Ausnahmen, um eine beliebige Anzahl von verschachtelten Beziehungen zu behandeln.
Ich denke, ihr habt alle eine Vorstellung davon, was ich versuche...
Oder ist dies eine völlig falscher Weg zur Behandlung von Nullwerten in verschachtelten Beziehungen
Ihre Gedanken werden sehr geschätzt werden (ich bin auf Schienen 2.3.8 läuft)
vielen Dank im Voraus
Prost
sameera