在我的 Rails 3.2 项目中,在我的控制器中,我有一个show_html
函数。如果它可以在数据库中找到具有特定 URL 的站点,它将把它传递给视图。否则,我希望它重定向到http://www.google.com
def show_html
site_list = Site.where(:url => params[:url])
if site_list.length > 0
site = site_list.first
else
redirect_to "http://www.google.com"
end
@html = site.html
render "show_html.html.erb"
end
当我测试它时site_list.length > 0
,它可以工作。但是什么时候site_length_list = 0
,它给出了一个错误undefined method 'html' for nil:NilClass
。为什么它不进入else
语句并渲染google.com
?