Увеличение размера фолиевой карты на мобильных устройствах

Я делаю веб-приложение, используя Django, Folium. У меня есть навигационная панель и карта Folium на веб-странице. Все работает нормально om компьютерах и устройствах с альбомным экраном, но на устройствах с портретным экраном карта имеет свободное пространство.

Мой код для карты:

....
current_map = folium.Map(location=start_location, zoom_start=6)
m = current_map._repr_html_()
....
context = {"current_map": m}
return render(request, template_name="index.html", context=context)

Как его заполнить?

enter image description here

Попробуйте это:

context = {'map': map.get_root().render()}
return render(request, template_name="index.html", context=context)

index.html:

<html> 
    {{map|safe}}
</html>
  

Ну, я мог бы использовать Figure и модифицировать пакет folium.

current_map = folium.Map(location=(48.51, 32.25), zoom_start=6)
map_container = branca.element.Figure(height="100%")
map_container.add_child(current_map)
...
context = {"current_map": map_container.render(), "form": form}
return render(request, template_name="hub/index.html", context=context)

Я скачал folium-0.12.1.post1.tar.gz, а из folium/folium.py удалил упоминания о старых версиях Bootstrap из списков _default_js и _default_css. Но я использую Bootstrap в base.html.

А в requirements.txt я использую этот локальный модифицированный дистр:

./distr/folium-0.12.1.post1.tar.gz

Вы можете использовать

current_map._repr_html_()

Это даст вам представление для jupitier notebook. И используйте его в шаблоне по

{{current_map|safe}}

В teality это содержание сиринга, которое легко может быть изменено на

.replace() 

и вы можете добавить рост, или изменить пропорции.

Также вы можете использовать

f=folium.Figure(height="100%"
current_map.add(f)

И в этом случае

current_map._repr_html_()

вернется

Вы можете управлять размером фоллиевого окна.

У меня тоже была подобная проблема некоторое время назад

Я решил эту проблему, изменив стиль карты в том месте, где я ее рендерил position:fixed;

Вернуться на верх