Domanda

Hi I am developing a simple api in ruby using intridea's grape. Let's say we have this:

class API_v1 < Grape::API
  resource :foo do
  end

  resource :bar do
  end

end

How could I make it so that the declaration for :foo and :bar are in separate files? Basically, I wanted to know if it is possible to have something similar to rails controllers where there are multiple files to organize the code.

I hope someone can give me an insight on how to achieve this.

È stato utile?

Soluzione

Ruby has open classes, so you should be able to simply move those to separate files.

# foo.rb
class API_v1 < Grape::API
  resource :foo do
  end
end

# bar.rb
class API_v1 < Grape::API
  resource :bar do
  end
end

Altri suggerimenti

The README recommends you use mount:

class Foo < Grape::API
  resource :foo ... 
end

class Bar < Grape::API
  resource :bar ... 
end

class API < Grape::API
  mount Foo
  mount Bar
end
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top