Как добавить крошку, чтобы придумать рубин на рельсах

Я хотел бы добавить панировочные сухари в формы регистрации и входа в систему (устройства), но я не знаю, куда добавить хлебные крошки в контроллер устройства?

У меня есть registrations_controller, который был унаследован от Devise::RegistrationsController, и я добавил крошку для редактирования. Я попытался создать user__controller (наследующий Devise::UsersController), но это дало мне ошибку циклической ссылки.

Как мне добавить эти хлебные крошки на пользовательские "страницы" в разработке?

Спасибо джо

2 ответа

Решение

Я использую драгоценные сухари на рельсах с устройством в моем проекте.

Если вы еще не создали модель User с устройством devise, сначала сделайте это:

rails g devise User
rake db:migrate
rails generate devise:views users

Мой registration_controller.rb выглядит так:

# app/controllers/registrations_controller.rb
class RegistrationsController < Devise::RegistrationsController
    add_breadcrumb "home", :root_path
    add_breadcrumb "contact", :contacts_path
end

Я изменил маршруты:

devise_for :users, :controllers => { registrations: 'registrations' }

В макете application.html.erb я добавил крошки (чуть выше <% = yield%>)

<%= render_breadcrumbs %>

Я только что проверил, и это работает, как вы можете видеть на скриншоте.

введите описание изображения здесь

Редакция:

Если вы хотите добавить хлебные крошки на другие страницы гема Devise, например страницу Забыли пароль, вы можете создать новый контроллер:

# app/controllers/passwords_controller.rb
class PasswordsController < Devise::PasswordsController
  add_breadcrumb "home", :root_path
  add_breadcrumb "contact", :contacts_path
end

и обновите ваши маршруты:

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

Пожалуйста, дайте мне знать, если это работает для вас.

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

rails generate devise:views users

Не забудьте заменить users с любым именем вашей модели пользователя, если это не так User (например Admin, Manager, так далее)

Затем вы можете добавить к этим представлениям все, что вам нужно, чтобы показать сухари.

Другие вопросы по тегам