Устройство добавляется к пользователю, когда пользователь не вошел в систему, веб-страница непосредственно переходит на страницу входа в Rails - PullRequest
0 голосов
/ 11 февраля 2019

Я работаю над приложением rails, когда запускаю localhost: 3000, если я не вошел в систему, он сразу переходит на страницу входа.в соответствии с требованием, я должен получить приветственное заявление, которое упоминается на домашней странице.

моя домашняя страница

    <h1>Cricket Admin Page </h1>

<% if user_signed_in?   %>
    <h2><%= link_to "Profile", user_path(current_user)  %></h2>
    <h2><%= link_to "Add role" , new_role_path %></h2>
    <h2> <%= link_to "Modify Users", users_path%></h2>  
<% else %> 
    <h1><% Welcome to cricket App %></h1>
    <h2><% to move further please login %></h2>
<% end %>

route.rb

Rails.application.routes.draw do


 devise_for :users, controllers: { registrations: 'users/registrations' }

  resources :users 

  root 'home#index'
end

Ответы [ 2 ]

0 голосов
/ 11 февраля 2019

Вы можете добавить before_action :authenticate_user! к своему контроллеру приложений, если хотите управлять аутентификацией на каждом контроллере, который наследуется от ApplicationController.

Затем в ваших отдельных контроллерах, где вам не требуется аутентификация пользователя, вы можете использовать skip_before_action :authenticate_user! и only: или except:, чтобы пропустить аутентификацию этих действий.

Например, чтобы пропустить аутентификацию пользователя в вашем действии индекса home_controller, вы можете использовать skip_before_action :authenticate_user!, only: %i[index] в вашем файле home_controller.rb.

0 голосов
/ 11 февраля 2019

Пожалуйста, удалите before_action :authenticate_user! из вашего application_controller

Добавьте вот так в home_controller

before_action :authenticate_user!, except: [:index]

или

before_action :authenticate_user!, only: ["list all actions except index"]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...