Ruby on Rails - Удалить заголовок и боковую панель AdminLTE - PullRequest
0 голосов
/ 27 октября 2018

Как скрыть заголовок и боковую панель AdminLTE, только для страницы регистрации? Для входа в систему он генерируется автоматически, когда я запускаю эту команду rails g devise:views users. Как насчет страницы регистрации?

enter image description here

Вот мой routes.rb:

    Rails.application.routes.draw do
      devise_for :users, controller: {
        sessions: "sessions/registrations"
      }
      get 'home/index'
      root :to => 'home#index'
    end

и мой application_controller.rb:

    class ApplicationController < ActionController::Base
      before_action :authenticate_user!

      layout 'admin_lte_2'
    end

1 Ответ

0 голосов
/ 27 октября 2018

Я не знаю, как именно вы используете устройство с администратором, но я вижу 2 возможных решения

Вариант 1

Вы можете определить другой маршрут для зарегистрированных пользователей:

devise_for :users
devise_scope :user do
  authenticated :user do
    root 'home#index', as: :authenticated_root
  end
  get 'user', to: 'devise/sessions#new'
end

Неаутентифицированные пользователи будут перенаправлены на devise / session # new view (или любой другой по вашему выбору).

Если вы хотите, чтобы для этих пользователей отображался другой контент, кроме страницы регистрации, добавьте root без аутентификации:

unauthenticated do
  root 'foo#bar', as: :unauthenticated_root
end

Вариант 2

Создайте свою пользовательскую страницу регистрации без заголовка и боковой панели. Я думаю, что проще отредактировать представление, сгенерированное devise (я не знаю, хорошо ли это), чем создать собственный макет. Вы, вероятно, будете иметь представление:

app/views/devise/registrations/new.html.erb

просто отредактируйте его так, чтобы он соответствовал вашим потребностям.

Для создания пользовательского макета для устройства смотрите здесь:

Wiki: создание пользовательских макетов

Wiki: настройка маршрутов

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...