我知道如何定义http verb methods(获取,发布,投注等)。我不明白的是我如何在我的应用文件中使用http动词方法,即使它们没有添加到Object
?
我理解他们是如何使用的,我只是想了解sinatra如何在幕后工作。
答案 0 :(得分:1)
它使用Object
模块扩展全局上下文(Sinatra::Delegator
),该模块将路由定义的适当方法委派给Sinatra Application。
https://github.com/sinatra/sinatra/blob/4797c022c96f7e023a365d5852c89fde0e08fa3e/lib/sinatra/main.rb#L31
以下是构建类似sinatra的应用程序的一个很好的示例:https://robots.thoughtbot.com/lets-build-a-sinatra 上面的教程使用与Sinatra相同的委托方法。