我在rails 5中创建了API。
我收到类UsersController的错误超类不匹配。
我的控制器:
module Api
module V1
class UsersController < ApplicationController
def index
users = User.Order('created_at DESC')
render json: {status:"SUCCESS", message:"Load Users", data:users}, status: :ok
end
def create
user = User.new(user_params)
end
def user_params
params.permit(:firstname, :lastname, :email, :age, :id)
end
end
end
end
我的路线:
Rails.application.routes.draw do
namespace :api do
namespace :v1 do
resources :users
end
end
end
这是我的文件夹结构:
我在控制台中遇到以下错误:
实际上,我刚开始使用ruby on rails。我试图找出问题,但找不到它。
您需要从Main
模块(Ruby中的“全局”命名空间)引用ApplicationController:
module Api
module V1
class UsersController < ::ApplicationController
::
告诉Ruby从main而不是当前模块嵌套中解析常量,这是Api::V1
。
您还需要确保ApplicationController
继承自ActionController::API
。
看到: