嗨,我正在使用 intridea 的葡萄在红宝石中开发一个简单的 api。假设我们有这个:
class API_v1 < Grape::API
resource :foo do
end
resource :bar do
end
end
我怎样才能使它的声明:foo
和:bar
在单独的文件中?基本上,我想知道是否有可能有类似于 rails 控制器的东西,其中有多个文件来组织代码。
我希望有人可以让我了解如何实现这一目标。
嗨,我正在使用 intridea 的葡萄在红宝石中开发一个简单的 api。假设我们有这个:
class API_v1 < Grape::API
resource :foo do
end
resource :bar do
end
end
我怎样才能使它的声明:foo
和:bar
在单独的文件中?基本上,我想知道是否有可能有类似于 rails 控制器的东西,其中有多个文件来组织代码。
我希望有人可以让我了解如何实现这一目标。
Ruby 有开放类,因此您应该能够简单地将它们移动到单独的文件中。
# foo.rb
class API_v1 < Grape::API
resource :foo do
end
end
# bar.rb
class API_v1 < Grape::API
resource :bar do
end
end
自述文件建议您使用mount
:
class Foo < Grape::API
resource :foo ...
end
class Bar < Grape::API
resource :bar ...
end
class API < Grape::API
mount Foo
mount Bar
end