Синатра «пространство имен» не работает при попытке модульного - PullRequest
0 голосов
/ 04 мая 2020

Вот мой код, но «пространство имен» не принимает. Если я пишу без пространства имен, оно работает, также оно будет работать с «пространством имен», если я удалю объявление класса и выполню напрямую.

require 'sinatra'
require 'sinatra/namespace'

     class MyApp < Sinatra::Base
        namespace "/v1" do
          get "/" do
          "Hello World!"
          end  
        end
      end

1: из test1.rb: 4: в <main>' test1.rb:5:in ': неопределенный метод `пространство имен' для MyApp: Class (NoMethodError)

1 Ответ

1 голос
/ 04 мая 2020

На основании документации Sinatra необходимо зарегистрировать расширение:

require 'sinatra'
require 'sinatra/namespace'

class MyApp < Sinatra::Base
    register Sinatra::Namespace

    namespace "/v1" do
        get "/" do
            "Hello World!"
        end  
    end
end
...