2013-06-15 7 views
3

Я использую Grape для создания моего API, и в соответствии с документацией я добавил следующие строки в application.rb so that all app/api` ruby ​​scripts добавлены в путь, а также как позволяющий автоперегрузку в режиме разработки:Добавить Path/Auto Load Path для API Grape Не работает

config.paths.add "app/api", :glob => "**/*.rb" 
config.autoload_paths += Dir["#{Rails.root}/app/api/*"] 

Я также добавил фрагмент кода в config/initializers, как и было задано. Однако ни автоматическая перезагрузка, ни пути не работают должным образом. .

Для пути, мне нужно явно добавлять все, используя require в главном файле API, который я использую (я отделил свои виноградные файлы в файлы + каталоги под app/api Если я удалить требуют, я получаю:

NoMethodError  
undefined method `call' for V1:Module 

авто-перезарядка также не работает вообще. Это не автоперезагрузки, когда я что-то изменить.

Что я здесь отсутствует?

+0

Сообщение ваше приложение где-то и по электронной почте список рассылки виноградный. В https://github.com/dblock/grape-on-rails есть приложение, которое выполняет все это и проверено на работу. –

ответ

0

Если разделить апи на множество файлов, которые необходимо установить эти части.

Они не должны быть разные версии, но могут быть компонентами тот же API.

class APP::API < Grape::API 
    mount APP::Groups 
    mount APP::Users 
end