该empty?
方法对于 nil 类是未定义的,因此当您nil.empty?
在控制台中尝试时,它会给出:undefined method empty? for nil:NilClass
我在 application_helper.rb 中创建了这个方法:
def full_title(page_title)
base_title = "my app"
if page_title.empty?
base_title
else
"#{base_title} - #{page_title}".html_safe
end
end
在我的应用程序布局中,我在标题标签上调用它,如下所示:
!!!
%html
%head
%title #{full_title(yield(:title))}
...
...
%body
= yield
在我的每个视图中,我都添加provide(:title, "something")
了将字符串传递给此辅助方法的内容。
但是当我不使用它时provide(:title, "something")
,它看起来像page_title.empty?返回真!
我的问题是为什么 page_title.empty?返回真。我认为 page_title 变量在我不使用时为零provide(:title, "something")
,它不会引发任何错误吗?比如未定义undefined method empty? for nil:NilClass