Ruby Rescue块无法捕获模板丢失代码

时间:2014-10-28 16:18:55

标签: ruby erb

在Padrino助手中添加一个小方法来添加部分。它有两个主要用途:

  1. 通过组件的配置文件轻松配置启用/禁用系统。
  2. 选择特定语言的布局 IF 找不到请求的布局。
  3. 这是我正在使用的代码:

    module SZHF
      App.helpers do
    
        def add_component component
          if disabled?(component)
            ""
          else
            begin
              partial(component)
            rescue
              language_specific(component)
            end
          end
        end
    
        def partial_exists?(component)
          File.file?(File.expand_path("../../views/#{component}.html.erb", __FILE__))
        end
    
        def disabled?(component)
          name = component.split("/").last
          config["enable_#{name}".to_sym] == false
        end
    
        def language_specific(component)
          name = component.split("/").last
          prefix = component.chomp(name)
          partial prefix + I18n.locale.to_s + "/" + name
        end
    
      end
    end
    

    但不知何故错误反而被抓到救援区;该页面返回错误说明:undefined method safe_concat'代表nil:NilClass`。

    无法弄清楚为什么,任何想法?

0 个答案:

没有答案