Как добавить <body>класс через параметры в Ruby on Rails - PullRequest
0 голосов
/ 26 мая 2018

На этот вопрос можно было ответить и раньше, но я не нашел решения своей проблемы.

Я хочу изменить класс тела, чтобы я мог установить фоновое изображение для определенных страниц с помощью CSS.

В application.html.erb:

<body class="<% params[:home_page] ? "homepage" : "" %>">

В моем контроллере у меня есть:

def home
    params[:home_page] = true
end

И в моем файле SCSS:

.homepage {
  background-image: url("blue_sky.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  height: 100%;
}

К сожалению, класс кузова не меняется.При проверке параметр home_page и значение true присутствуют в параметрах, так почему же класс тела не изменится на "homepage"?Я также попытался использовать переменную экземпляра вместо параметров, но безуспешно.

Спасибо, ребята!

1 Ответ

0 голосов
/ 26 мая 2018

Вы пропустили это = это должно быть так

<body class="<%= params[:home_page] ? "homepage" : "" %>">

во-вторых, params[:home_page] означает localhost:3000?home_page=true, в то время как у вас есть это из действия, тогда было бы хорошо, как это

def home
   @home_page = true
end

затем

<body class="<%= @home_page ? "homepage" : "" %>">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...