Oft muss ich überprüfen, ob ein Wert leer ist, und Folgendes schreiben: "Keine Daten vorhanden":
@user.address.blank? ? "We don't know user's address" : @user.address
Und wenn wir ungefähr 20-30 Felder haben, die wir auf diese Weise verarbeiten müssen, wird es hässlich.
Was ich gemacht habe, ist eine erweiterte String-Klasse mit or
Methode
class String
def or(what)
self.strip.blank? ? what : self
end
end
@user.address.or("We don't know user's address")
Jetzt sieht es besser aus. Aber es ist immer noch roh und rau
Wie wäre es besser, mein Problem zu lösen. Vielleicht wäre es besser, die ActiveSupport class
Hilfsmethode oder Mixins oder irgendetwas anderes zu erweitern oder zu verwenden. Welche Ruby-Idealogie, Ihre Erfahrung und Ihre Best Practices mir sagen können.