2016-11-22 9 views
0

Rails 5 APIのJWT認証にノックを使用しています。 Rails 5 - ルートの名前を付けたときにJWTがノックしない

私はこのルートのファイルがあります。これにより

Rails.application.routes.draw do 
    namespace :api, constraints: { subdomain: 'api' }, path: '/' do 
     namespace :v1 do 
      post 'user_token' => 'user_token#create' 
     end 
    end 
end 

を、私はこのような新しいトークンを作成するためにPOSTリクエストを作ることができることを期待:

POST http://api.domain.com/v1/user_token

をしかし、この要求は私に与えます次のエラー:

NameError: uninitialized constant API::V1::User

ノックがモデルにアクセスしようとしていますは、コントローラ(user_token_controller)と同じ名前空間にあります。しかし、私のモデルは、名前空間されていません。

class User < ApplicationRecord 
    has_secure_password 
    #... 
end 

マイuser_token_controller.rb

module API 
    module V1 
     class UserTokenController < Knock::AuthTokenController 
     end 
    end 
end 

何洞が間違っていますか?

答えて

0

すでにfixedのバグですが、まだ公開されていません。

一時的な解決策は、githubのコードから宝石を使用していたように:

gem 'knock', github: 'psantos10/knock', branch: 'master'

https://github.com/nsarno/knock/issues/120

関連する問題