2016-04-06 79 views
0

我想使用grape-entity,我遇到了我的實體類的名稱空間的問題,但我不明白爲什麼。無效的常量API ::與葡萄和葡萄實體

我有這個葡萄實體類:

# app/controllers/api/v1/entities/vehicules.rb 
module API 
    module V1 
    module Entities 
     class Vehicules < Grape::Entity 
     expose :marque 
     expose :modele 
     expose :user do 
      expose :name 
     end 
     end 
    end 
    end 
end 

和葡萄類:

# app/controllers/api/v1/vehicules.rb 
module API 
    module V1 
    class Vehicules < Grape::API 
     include API::V1::Defaults 
     version 'v1' 
     format :json 


     resource :vehicules do 
     desc "Return list of vehicules" 
      get do 
      #authenticate! @todo 
      vehicules = Vehicule.find_by(user_id: params['user_id']) 
      present vehicules, with API::V1::Entities::Vehicules 
      end 

當我打電話curl http://localhost:3000/api/v1/vehicules?user_id=123我在軌服務器這樣的信息:

Ruby2.1.0/lib/ruby/gems/2.1.0/gems/activesupport-4.2.1/lib/active_support/dependencies.rb:457:in `load': 
app/controllers/api/v1/vehicules.rb:21: syntax error, unexpected tCONSTANT, expecting keyword_do or '{' or (' SyntaxError) 
present vehicules, with API::V1::Entities::Vehicules 
         ^

任何幫助都會很棒。

回答

0

with:

present vehicules, with: API::V1::Entities::Vehicules