首页 > 解决方案 > Sinatra 无法启动一个非常基本的演示,template_cache 为 nil

问题描述

在 gem install sinatra 之后,我启动了一个非常基本的演示代码 myapp.rb

require 'sinatra'

get '/' do
  'Hello world!'
end

运行“ruby myapp.rb”后,访问http://localhost:4567/失败

application error
NoMethodError at / 
undefined method `clear' for nil:NilClass

    file: base.rb location: call! line: 921 


BACKTRACE

 /var/lib/gems/2.3.0/gems/sinatra-2.0.3/lib/sinatra/base.rb in call! 

    def call!(env) # :nodoc:
      @env      = env
      @params   = IndifferentHash.new
      @request  = Request.new(env)
      @response = Response.new
      template_cache.clear if settings.reload_templates

这里 template_cache 是 nil,我的 sinatra 版本是 2.0.3,gem 版本是 2.3.0。

我如何解决它?

标签: ruby-on-railsrubysinatra

解决方案


推荐阅读