Насколько я знаю, вы не можете получить прямой доступ к CSS из своего кода представления - однако вы, безусловно, можете применять стили CSS с помощью Javascript (JQuery упрощает его и поставляется с рельсами по умолчанию), и вы можете использовать экземпляр переменная из вашего контроллера в этом Javascript.
В качестве альтернативы вы можете использовать встроенный CSS в своем представлении, но это кажется еще более неприятным, чем решение JS.
изм:
Вот суть того, о чем я говорю - это не проверено, но должно дать вам начало.
$(document).ready(function() {
var refreshImage = function(){
$.ajax({
url: 'your helper url here',
success: function( data ) {
$(".bg").css("background-image" "url(" + data.url + ")");
setTimeout(refreshImage(), 60000);
}
});
}
refreshImage();
});
По сути, вы можете настроить вызов готового документа, который будет извлекать URL-адрес изображения из определенного вами действия, затем установить его на своей странице и сам "запланировать" запуск снова через 60 секунд.