Есть ли какая-то функциональность главной страницы в Ruby on Rails? - PullRequest
8 голосов
/ 23 октября 2009

Я являюсь разработчиком .Net последние семь лет или около того и работаю с ASP.Net последние пару лет. Сейчас я использую Ruby on Rails для некоторых проектов, и я хочу знать, есть ли что-то в Ruby on Rails, которое позволяет вам делать вещи типа главной страницы?

По сути, мне нужен способ обеспечить единообразный внешний вид сайта с помощью верхнего и нижнего колонтитула и т. Д., А затем просто сделать так, чтобы каждая страница помещала в него свое содержимое. Как вам это сделать?

Ответы [ 2 ]

6 голосов
/ 23 октября 2009

в вашем проекте rails в app / layouts / application. (Html.erb | html.haml), это макет или эквивалент для master. Вы также можете создать другие макеты и указать макет, который будет использоваться для каждого действия:

render :index, :layout => "awesome"

Или укажите макет для всего контроллера:

class PostController < ActionController::Base
  layout "super_awesome"
end
0 голосов
/ 17 июля 2015

Вы можете использовать макет, который похож на главную страницу в ASP.Net, есть много способов назначить главную страницу для вашего железнодорожного приложения:

  1. Для одной страницы :
class EmployeesController < ApplicationController
  layout "submaster"
  # ---
end

субмастер находится в app / views / layouts / submaster.html.erb

  1. Для всего применения :
class ApplicationController < ActionController::Base
  layout "main"
  #...
end

main находится в app / views / layouts / main.html.erb

  1. Макет во время выполнения :
class EmployeesController < ApplicationController
      layout :emp_layout

      def show
        # ---
      end

      private
        def emp_layout
          @current_user.admin? ? "admin" : "submaster"
        end

 end

Если текущий пользователь является администратором, он получит макет администратора или макет субмастера.

Если возможно, пожалуйста, проверьте идентификаторы урожайности в рельсах.

...