2016-05-16 50 views
2

我试图给我的'类别'控制器和资源添加一个命名空间。命名空间JSONAPI资源和控制器

所以,我做的第一件事是移动categories_controller.rbapp/controllers/api/v1/categories_controllercategory_resource.rbapp/resources/api/v1/

然后我重新声明这些文物如下:

控制器

module Api 
    module V1 
    class CategoriesController < ApplicationController 
     #before_action :doorkeeper_authorize! 
    end 
    end 
end 

资源

module Api 
    module V1 
    class CategoryResource < JSONAPI::Resource 
     attribute :name 
    end 
    end 
end 

而在routes.rb我感动的类别路线

namespace :api do 
    namespace :v1 do 
    jsonapi_resources :categories 
    end 
end 

我已经得到了不同的误差修改试图解决这个问题。到目前的配置,这是我得到的错误:

JSONAPI:找不到资源'类别'。 (类别资源未找到)(NameError)

我在做什么错?

回答

0

根据此处的文档(https://github.com/cerebris/jsonapi-resources),您不应该移动该资源。

它不应该在模块中。

+0

嘿,谢谢你的回复。我正在关注这部分指南https://github.com/cerebris/jsonapi-resources#namespaces –

+0

何时抛出错误? – Albin

+0

当我开始导轨 –

0

您的代码看起来不错 - 我有jsonapi资源0.7.0类似的东西:

class Api::V1::UsersController 
... 
class Api::V1::UserResource < BaseResource 
... 
namespace :api do 
namespace :v1 do 
    jsonapi_resources :users do 
    jsonapi_relationships 
    end 

是有可能的轨道载荷路径试图加载api/v1目录,而不是直接把它当作模块子文件夹?