@vadimstroganov

Как так получить данные о странице?

Здравствуйте! Не пойму как это работает.
Во многих проектах, допустим чтобы получить заголовок страницы, контент страницы и любые другие данные, пишут так:
@page.title
@page.content

и так далее

В переменную @page - приходит вся информация, она видимо как-то ищется по ID страницы, но не пойму как сделать так же.
Я хочу чтобы я не писал в контроллере
@title = sql...
и потом передавал это в вид, а чтобы сразу писал
@page.title
как такое сделать, подскажите пожалуйста
  • Вопрос задан
  • 107 просмотров
Решения вопроса 1
Freika
@Freika
Senior Ruby on Rails developer
Контроллер на то и существует, чтобы получать данные и лишь после этого отдавать их во view-часть. На практике вы можете сделать что-то вроде такого во вьюхе:

Page.find(1).title

То есть фактически выполнить запрос на поиск нужного объекта прямо из view-слоя. Но это фу и признак полнейшего невежества (как минимум потому, что вьюхи не для этого предназначены). Поэтому примите за данность необходимость получать данные в экшене контроллера, присваивать их переменным экземпляра и во вьюхах обращаться уже к переменным экземпляра.

А вообще читать от корки до корки rusrails.ru, разделы "Модели", "Вьюхи" и "Контроллеры".
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы