2

我有一个骨架 Padrino (0.10.7) 项目,几乎没有代码。我正在尝试在 boot.rb 中插入一个中间件:

##
# Add your after (RE)load hooks here
#
Padrino.after_load do
    DataMapper.finalize
    Padrino.use MyClass      #Line (1) added by me
end

Padrino.load!

在我的课堂中,

class MyClass
    def initialize arg
    @arg = arg
    end
end

如果我尝试使用瘦服务器(1.5.x),我会得到这个异常(仅当我插入中间件时):

Uncaught exception: app required

同样适用于内置 webrick。

关于如何使它与薄一起工作的任何想法?

4

1 回答 1

2

没关系,找到了。基本上,您还需要定义调用(env)方法,否则它甚至不会启动服务器。这是中间件的最低要求:

class MyClass
    def initialize app
        @app = app
    end
    def call env
        @app.call env
    end
end
于 2013-01-10T09:02:08.250 回答