#ruby-on-rails #layout #rendering #partial-views
#ruby-on-rails #макет #рендеринг #частичные просмотры
Вопрос:
Я разрабатываю какое-то приложение rails, у меня есть боковая панель с древовидным отображением, некоторый основной контент с формами CRUD и заголовком страницы.
Но когда я нажимаю «Создать», «Создать» или «Показать», rails перезагружает всю страницу.
Что я могу сделать, чтобы отображать только yield
без боковой панели и заголовка страницы? (например, теперь мой вид дерева сворачивается, когда я перехожу с одной страницы на другую страницу).
Ответ №1:
Планировка
Вам лучше всего будет ознакомиться с layouts
внутренними Рельсами —
Каждый раз, когда ваше приложение загружает представление, оно оборачивает его символом layout
— это в основном способ определить, как выглядит ваше приложение
Я бы рекомендовал посмотреть app/views/layouts/application.html.erb
— это макет по умолчанию / стандартный макет для вашего приложения, и именно там sidebar
будут находиться ваши и другие элементы макета
—
Опции
У вас есть выбор: либо использовать conditions
для определения аспектов вашего макета, либо просто использовать другие макеты для определения другого внешнего вида
Чтобы установить другие макеты, вы можете сделать это:
#app/controllers/your_controller.rb
Class YourController < ApplicationController
def action
layout "form" #-> will use app/views/layouts/form.html.erb
end
end