如何在我的用户页面(HTML)中创建django Admin的URL

时间:2019-04-30 08:47:25

标签: django django-templates django-admin django-urls

我是编码的新手,我试图在NavBar中创建URL链接以重定向我的Django Admin示例:

<a class="nav-link" href="{% url 'admin'%}"> Admin site </a>

但是,Django确实找到了;禁止反向匹配,

它适用于其他URL链接

我必须尝试的事情:

  1. 正在项目URL中添加名称
  2. 在我的应用程序URL中包括URL路径

我的项目网址代码:

from Django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path(r'admin/', admin.site.urls, name='admin' ),
    path(r'accounts/', include('django.contrib.auth.urls')),
    path(r'api-auth/', include('rest_framework.urls'), name='rest_framework'),
    path(r'', include('app.urls')),

我的应用网址代码:

from django.urls import path, include
from . import views #function views
from django.contrib.auth.decorators import login_required, permission_required


from rest_framework import routers
router = routers.DefaultRouter()
router.register(r'tank', views.TankViewSet)
router.register(r'room', views.RoomViewSet)
# Wire up our API using automatic URL routing.
# Additionally, we include login URLs for the browsable API.

urlpatterns = [
    path(r'',login_required(views.index), name='index'),
    path (r'test/',views.Test),
    path(r'^Water/',login_required(views.Lquid), name='tank'),
    path(r'^Ambient/',login_required(views.Ambient), name='room'),
    path(r'Rest-api/', include(router.urls)),
   #path(r'admin/', admin.site.urls, name='admin' ), this somthing I had try
    ]

基本上,Django以一种有效的方式进行工作并重定向到任何页面上的URL链接

导航栏:  管理网站

应用网址: path(r'',login_required(views.index),name ='index'),

通过这两个链接,它将重新定位到您设置的页面。

学徒,如果您冷淡帮助

1 个答案:

答案 0 :(得分:1)

在反向管理admin时,您需要指定要重定向到的admin页面。要进入管理主页,您需要进行反向查找

reverse('admin:index')

因此要链接到导航栏中的管理主页,它应该看起来像这样

<a class="nav-link" href="{% url 'admin:index' %}"> Admin site </a>

查看docs,了解如何反向查找管理页面