создание одного макета приложения для нескольких форматов - PullRequest
0 голосов
/ 14 января 2011

Я работаю над приложением Rails, которое объявляет: мобильный формат для iPhone и Android и предоставляет show.mobile.haml для мобильных устройств и show.html.haml для веб (например).

Формат мобильного запроса, очевидно, использует application.mobile.haml, а Интернет использует application.html.haml - но оба макета одинаковы, отличаются только представления.

Мой вопрос: как использовать один макет приложения дляи мобильный и HTML-форматы запросов?Покопался в документации по Rails API и, похоже, не могу найти очевидного решения.

1 Ответ

0 голосов
/ 14 января 2011

Вам не нужно ничего делать.Это происходит автоматически, когда вы добавляете расширение к своим URL-адресам.Если вы перейдете на / controller / action.mobile , будет отображено представление action.mobile.haml .Если вы перейдете в / controller / action.html , будет отображено представление action.html.haml .

Это поведение управляется форматом параметр (вы можете увидеть это в вашем файле маршрутов).Так что / controller / action.mobile совпадает с / controller / action? Format = mobile .

Конечно, иногда вы хотите, чтобы ваши действия вели себя по-другомув зависимости от текущего формата.Это поддерживается с использованием методов response_to и response_with.Более подробную информацию об этом можно найти здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...