Ваш код просто определяет макрос снова и снова, он ничего не отображает. Избегайте чтения request.endpoint
и используйте базовые шаблоны для этого.
base.html
<ul class="nav nav-pills">
<li class="{% block nav_here %}{% endblock %}">Here</li>
<li class="{% block nav_there %}{% endblock %}">There</li>
<li class="{% block nav_anywhere %}{% endblock %}">Anywhere</li>
</ul>
{% block content %}{% endblock %}
there.html
{% extends "base.html" %}
{% block nav_there %}active{% endblock %}
{% block content %}
<blockquote>No matter where you go, there you are.</blockquote>
{% endblock %}
Базовая навигация определяет пустые nav_
блоки в классе li
, а дополнительный шаблон устанавливает соответствующий параметр active
. Вы можете расширить это, если хотите иметь суб-навигацию внутри страниц.
Вам нужно установить область карты в viewDidAppear
, а не viewDidLoad
. Когда вызывается viewDidLoad
, вид карты только что был загружен - карта еще не была отображена, поэтому вы не можете установить ее область.
Еще одна вещь, которую нужно изменить - это диапазон. (0,05,0,05) кажется слишком маленьким, чтобы показать 3-4 страны. Вы должны попробовать что-то большее, например (5, 5). Помните, что эти цифры представляют в градусах ширину и высоту области карты.