6
如果字符串为空,则返回一些默认值
通常,我需要检查某个值是否为空,并这样写“无数据存在”: @user.address.blank? ? "We don't know user's address" : @user.address 当我们有大约20-30个字段需要以这种方式处理时,它变得很丑陋。 我所做的是带有or方法的扩展String类 class String def or(what) self.strip.blank? ? what : self end end @user.address.or("We don't know user's address") 现在看起来好多了。但这仍然是粗糙的 如何更好地解决我的问题。也许最好扩展ActiveSupport class或使用辅助方法或mixins或其他任何方法。红宝石的思想,您的经验和最佳实践可以告诉我。