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
それが誰かを助けることを願っています。