Обычно RoR ничего не знает ни о размерах области просмотра браузера, ни о разрешении компьютера, на котором работает браузер.Однако вы можете прочитать их с помощью JavaScript и передать их на сервер в виде скрытого ввода.(См. здесь .)
На данный момент - это важное предостережение - iPad 3 - единственный iPad с разрешением 2048 x 1536. Ваш сценарий будет
(
(screen.width == 2048 && screen.height == 1536) ||
(screen.width == 1536 && screen.height == 2048)
)
, который учитывает возможное разрешение iPad 3 в альбомном и портретном режимах.
request.env['HTTP_USER_AGENT'].match(/iPad/i)
сообщит вам, является ли запрашивающее устройство iPad.
Ударьте по обоим, и это iPad 3. Это не совсем удовлетворительно, но работает.