Проблемы со входом в систему с помощью Rails 4, Devise и CanCan

Я новичок в Rails и Devise. У меня проблемы со входом/регистрацией. При попытке авторизоваться получаю следующую ошибку:

ActiveRecord::RecordNotFound in UsersController#show
Couldn't find User with 'id'=sign_in

Действие show в Users Controller выглядит следующим образом:

def show
  authorize! :show, current_user
  render 'profile_page'
end

Любая помощь будет принята с благодарностью.

Вот мой route.rb: Rails.application.routes.draw do

get 'users/:id' => 'users#show'
resources :users
get 'users/edit'

controller :static_pages do
  get :home
  get 'show' =>'users/show'
end

resources :posts do 
  resources :comments
end
scope '(:locale)' do
  resources :posts
end

devise_for :users do 
 get '/users/sign_out' => 'devise/sessions#destroy', :as => :destroy_user_session
 get 'users/:id' => 'users#show'
end

authenticated :user do
   root :to => 'posts#index', as: :authenticated_root
end

resources :contacts, only: [:new, :create] do
  root :to => 'static_pages#home'
end

controller :static_pages do
  get :home
  get 'about' =>'static_pages#about'
  get 'about_class' => 'static_pages#about_class'
  get 'schedule_class' =>'static_pages#schedule_class'
end

end

person Greg B    schedule 14.10.2015    source источник


Ответы (1)


Rails ищет users/:id, вероятно, с действием users#show, когда вы, вероятно, вводите users/sign_in в свой браузер. Ваши маршруты должны быть скорректированы.

person Riftus    schedule 14.10.2015
comment
Я не уверен, что понимаю. Я пробовал разные вещи. Не могли бы вы еще раз взглянуть теперь, когда я добавил маршруты и уточнить ваш ответ, или дать мне еще один указатель? Опять же, любая дополнительная информация или помощь будет принята с благодарностью. - person Greg B; 15.10.2015