Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails irb和rails控制台显示[]的不同结果。空白?_Ruby On Rails_Ruby On Rails 3_Ruby On Rails 4 - Fatal编程技术网

Ruby on rails irb和rails控制台显示[]的不同结果。空白?

Ruby on rails irb和rails控制台显示[]的不同结果。空白?,ruby-on-rails,ruby-on-rails-3,ruby-on-rails-4,Ruby On Rails,Ruby On Rails 3,Ruby On Rails 4,为什么irb和rails控制台对[]显示不同的结果。空白 这是我的irb支票: $ irb 2.1.0 :001 > a = [] => [] 2.1.0 :002 > a.blank? NoMethodError: undefined method `blank?' for []:Array from (irb):2 from /home/user/.rvm/rubies/ruby-2.1.0/bin/irb:11:in `<main>' $

为什么irb和rails控制台对[]显示不同的结果。空白

这是我的irb支票:

$ irb
2.1.0 :001 > a = []
 => [] 
2.1.0 :002 > a.blank?
NoMethodError: undefined method `blank?' for []:Array
    from (irb):2
    from /home/user/.rvm/rubies/ruby-2.1.0/bin/irb:11:in `<main>'
$ rails c -e local
Loading local environment (Rails 4.1.5)
2.1.0 :001 > a = []
 => [] 
2.1.0 :002 > a.blank?
 => true 

blank?
方法是由rails添加的(不属于标准ruby语言) 从rails文档:

需要ActiveSupport扩展 该方法是Rails的一部分。默认情况下,Rails包括ActiveSupport。但是,这些扩展也可以独立于Rails安装

您可以在其他应用程序或交互式REPL会话中包含部分ActiveSupport,方法是要求提供所需的ActiveSupport部分。例如,混合支持#blank?方法:

require 'active_support'
require 'active_support/core_ext/object/blank'

[].blank?
# => true
require 'active_support'
require 'active_support/core_ext/object/blank'

[].blank?
# => true