2015-07-09 7 views
0

Настройте аутентификацию с помощью AngularJS и Ruby on Rails. Попробуйте сделать это в этой статье https://www.airpair.com/ruby-on-rails/posts/authentication-with-angularjs-and-ruby-on-rails. Но при запуске теста с RSpec имеют ту же ошибкуНет совпадений в маршруте [GET] "/ sign_in"

Authentication login with valid inputs 
    Failure/Error: Unable to find matching line from backtrace 
    ActionController::RoutingError: 
     No route matches [GET] "/sign_in" 

В рейк маршруты:

    Prefix Verb URI Pattern       Controller#Action 
     new_user_session GET /users/sign_in(.:format)    devise/sessions#new 
      user_session POST /users/sign_in(.:format)    devise/sessions#create 
    destroy_user_session GET /users/sign_out(.:format)    devise/sessions#destroy 
      user_password POST /users/password(.:format)    devise/passwords#create 
     new_user_password GET /users/password/new(.:format)   devise/passwords#new 
     edit_user_password GET /users/password/edit(.:format)   devise/passwords#edit 
         PATCH /users/password(.:format)    devise/passwords#update 
         PUT /users/password(.:format)    devise/passwords#update 
cancel_user_registration GET /users/cancel(.:format)    devise/registrations#cancel 
     user_registration POST /users(.:format)      devise/registrations#create 
    new_user_registration GET /users/sign_up(.:format)    devise/registrations#new 
    edit_user_registration GET /users/edit(.:format)     devise/registrations#edit 
         PATCH /users(.:format)      devise/registrations#update 
         PUT /users(.:format)      devise/registrations#update 
         DELETE /users(.:format)      devise/registrations#destroy 
     user_confirmation POST /users/confirmation(.:format)   devise/confirmations#create 
    new_user_confirmation GET /users/confirmation/new(.:format)  devise/confirmations#new 
         GET /users/confirmation(.:format)   devise/confirmations#show 
        root GET /         devise/sessions#new 
       user_root GET /persons/profile(.:format)    persons#profile 
       next_page GET /index(.:format)      persons#index 
         GET /omniauth/:provider/callback(.:format) devise_token_auth/omniauth_callbacks#redirect_callbacks 
+1

На самом деле это посылает 'GET 'запрос, который должен быть' POST' на форме submit, а также путь ''/sign_in'', который должен быть ''/users/sign_in '' – Deep

ответ

0

Как ваш routes сказать ... Вам нужно использовать /users/sign_in с GET запроса. Вы используете /sign_in которые не существует ... вы можете напрямую использовать new_user_session_path , если вы на самом деле хотите использовать/sign_in, редактировать свои маршруты и добавить

get 'sign_in' => 'devise/sessions#new' 
Смежные вопросы