我想知道 Rails 如何处理方法空白?
我试图建立自己的空白?等效的方法,但这并不容易。这是我的尝试:
def my_blank(state)
if state == nil or state.empty? == true
true
else
false
end
end
我想知道 Rails 如何处理方法空白?
我试图建立自己的空白?等效的方法,但这并不容易。这是我的尝试:
def my_blank(state)
if state == nil or state.empty? == true
true
else
false
end
end
这个项目是开源的,所以看看源码:https ://github.com/rails/rails/blob/master/activesupport/lib/active_support/core_ext/object/blank.rb
您会看到为各种类(如 、 等)编写了单独的String
方法Array
。
这是我写的另一个变体来帮助我处理系统中的一些结构:
Object.class_eval do
def deep_blank?
self.kind_of?(Enumerable) ? self.inject(true) { |running, element| running &&= element.kind_of?(Enumerable) ? element.deep_blank? : element.blank? } : self.blank?
end
end
希望它可以帮助某人。