Я хочу отображать карту только по требованию (чтобы минимизировать время загрузки), означает, что некоторая ссылка, например «Показать карту», должна отображать карту в указанном элементе div.что мне делать?
Просто используйте метод 'to_gmaps4rails', описанный здесь: https://github.com/apneadiving/Google-Maps-for-Rails/wiki/Methods
В общем, выполните:
<%=raw assets_hash.to_gmaps4rails(true) %>
Это отрендерит только js, необходимые для отображения ваших активов.
Так что включите gmaps4rails.js и .css (при необходимости) и div для размещения карты.