我正在尝试在我的rails 3.2.3 app中运行 grape gem 。
我正在学习本教程:
http://martinciu.com/2011/01/mounting-grape-api-inside-rails-application.html
但是我收到了这个错误:
cannot load such file -- lib/api
我在config.autoload_paths += %W(#{config.root}/lib)
文件中添加了application.rb
。
此外,我已将require "lib/api"
添加到我的routes.rb
文件
缺少什么?
答案 0 :(得分:3)
问题得到解决。
如果您是新手,本教程http://martinciu.com/2011/01/mounting-grape-api-inside-rails-application.html会产生误导。
例如, lib文件夹中的文件名和模块名称应该在ruby中匹配,所以如果你有MyApp
,它应该在{{ 1}}它应该在加载路径上。
正确的方法是:
lib/my_app.rb
您必须在#lib/my_app.rb
module MyApp
class API < Grape::API
prefix "api"
resource "posts" do
get do
Post.all
end
get ':id' do
Post.find(params[:id])
end
end
end
end
下添加自动加载:
config/application.rb
最后,您必须将其添加到 routes.rb 文件中:
mount MyApp :: API =&gt; “/”强>