Ссылка в шаблоне для роутеров rest_framework - PullRequest
0 голосов
/ 29 января 2020

Я установил rest_framework и у меня есть страница с именем api

from . import views
from rest_framework import routers
from django.conf.urls import url
from django.conf.urls import include

router = routers.DefaultRouter()
router.register(r'genres', GenreViewSet)
router.register(r'blogs',BlogViewSet)

urlpatterns = [
    url(r'^api/',include(router.urls), name='api') #name is here???
]

, но в шаблоне я не могу получить доступ к странице

<a href="{% url 'api' %}">api</a>

Это показывает ошибку, я думаю, что я хотя в принципе как-то не так ...

django.urls.exceptions.NoReverseMatch: Reverse for 'api' not found. 'api' is not a valid view function or pattern name.

1 Ответ

1 голос
/ 29 января 2020

Вы не можете установить атрибут name для «включенных» путей.
Но вы можете установить атрибут namespace для доступа к включенным представлениям с помощью:
{% url 'namespace:url_name' %}

...