首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

django:如何将主页链接添加到管理员

在Django中,要将主页链接添加到管理员界面,可以按照以下步骤操作:

  1. urls.py文件中,创建一个名为home的URL模式,指向主页视图函数。例如:
代码语言:python
代码运行次数:0
复制
from django.urls import path
from . import views

urlpatterns = [
    # ...其他URL模式...
    path('', views.home, name='home'),
]
  1. views.py文件中,创建一个名为home的视图函数,该函数将返回主页的内容。例如:
代码语言:python
代码运行次数:0
复制
from django.shortcuts import render

def home(request):
    return render(request, 'app/home.html')
  1. admin.py文件中,创建一个名为AdminSite的子类,并覆盖get_urls方法,以添加主页链接。例如:
代码语言:python
代码运行次数:0
复制
from django.contrib import admin
from django.urls import path
from django.utils.html import format_html

class CustomAdminSite(admin.AdminSite):
    def get_urls(self):
        urls = super().get_urls()
        custom_urls = [
            path('', self.admin_view(self.home_view), name='home'),
        ]
        return custom_urls + urls

    def home_view(self, request):
        return render(request, 'admin/home.html')

admin_site = CustomAdminSite(name='custom_admin')
  1. templates/admin/base_site.html文件中,修改导航栏,添加主页链接。例如:
代码语言:html
复制
{% extends "admin/base.html" %}

{% block extrahead %}
    {{ block.super }}
   <style>
        #header {
            background-color: #007bff;
        }
        #header h1 a {
            color: white;
        }
    </style>
{% endblock %}

{% block branding %}
    <a href="{% url 'custom_admin:home' %}" class="logo">
        <img src="{% static 'admin/img/logo-header.svg' %}" alt="Logo">
        <span>My Website</span>
    </a>
{% endblock %}

{% block nav-global %}{% endblock %}

{% block notifications %}
    {% if messages %}
        <ul class="messagelist">
            {% for message in messages %}
                <li{% if message.tags %} class="{{ message.tags }}"{% endif %}>
                    {% if message.level_tag == 'error' %}<strong>{{ _("Error") }}:</strong> {% endif %}
                    {{ message|capfirst }}
                </li>
            {% endfor %}
        </ul>
    {% endif %}
{% endblock %}

现在,在Django管理员界面中,导航栏应该会显示一个指向主页的链接。点击该链接将重定向到主页视图。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

(源码下载)完整的 Django 零基础教程|初学者指南 - 第6 部分 转自:维托尔·弗雷塔斯

Django 管理员漫画 Django Admin 的一个很好的用例是在博客中;作者可以使用它来撰写和发表文章。另一个例子是电子商务网站,员工可以在其中创建、编辑、删除产品。...Django 管理员登录 输入用户名 和密码 登录管理界面: ? Django 管理员 它已经配置了一些功能。在这里我们可以添加用户 和组 来管理权限。稍后我们将探讨更多这些概念。...Django 管理板 就是这样!它可以使用了。单击Boards 链接以查看现有板的列表: ? Django 管理板列表 我们可以通过单击“Add Board” 按钮来添加新板: ?...我们还配置了 Django 模板引擎、静态文件,并将 Bootstrap 4 库添加到项目中。最后,我们对 Django Admin 界面做了一个非常简单的介绍。...django-beginners-guide-0.2-lw.zip: 点击下载(访问密码:3604) ---- 版权属于:Cyril 本文链接:https://www.cyrilstudio.top/archives

1.2K30

Django开发快速入门

第一步是将新应用添加到我们的INSTALLED_APPS配置中。...我们可以只键入python manage.py makemigrations,但是如果有多个应用程序进行了数据库更改,那么这两个应用程序都将被添加到迁移文件中,这使得将来的调试更加困难。...image-20200916020819935 您将被重定向到管理员主页。 ? image-20200916020903737 单击书籍的链接。 ?...Django的工作方式,现在,当用户转到我们网站的主页时,他们将首先点击library_project / urls.py文件,然后将其重定向到使用BookListView指定的books / urls.py...image-20200916022359047 如果我们在管理员中添加其他图书,则它们也都将出现在此处。 这是对传统Django网站的快速浏览。 现在,向其中添加一个API!

2.3K41
  • DJANGO的用户认证系统

    Django自带的用户认证系统,为开发者提供了许多在用户登陆登出方面的快捷开发命令。这篇博文为初学者讲解如何使用django的用户认证系统。...Djang中对应的User类只有一个,“超级管理员”(superuser)或“普通用户”(staff)是用户类的属性对象,而不是不同的类。...user.first_name="kevin" user.last_name="guo" user.save() 3.创建超级管理员用户 为安全起见,超级管理员用户无法通过如上方法创建,django为我们提供的...manage.py 工具包中的方法可以创建一个超级管理员用户 python manage.py createsuperuser --username=kevinguo --email=kevinguo@...(username="kevinguo",password="mypassword") if user: pass else: pass 6.用户的登陆 如何将上述已经得到验证的用户添加到当前的会话

    1.4K20

    DJANGO的用户认证系统

    Django自带的用户认证系统,为开发者提供了许多在用户登陆登出方面的快捷开发命令。这篇博文为初学者讲解如何使用django的用户认证系统。...Djang中对应的User类只有一个,“超级管理员”(superuser)或“普通用户”(staff)是用户类的属性对象,而不是不同的类。...user.first_name="kevin" user.last_name="guo" user.save() 3.创建超级管理员用户 为安全起见,超级管理员用户无法通过如上方法创建,django为我们提供的...manage.py 工具包中的方法可以创建一个超级管理员用户 python manage.py createsuperuser --username=kevinguo --email=kevinguo@...(username="kevinguo",password="mypassword") if user: pass else: pass 6.用户的登陆 如何将上述已经得到验证的用户添加到当前的会话

    1.1K10

    Django框架开发001期 Python+Django开发教程,开启你的第一个django网站应用

    我们先来看看刘金玉编程写的Django开发有关的书,python操作Django框架来实施一些有用的项目。...*注意cmd命令提示符要用管理员模式打开 如果下载速度不够快,可以使用国内镜像下载安装,以下命令是使用清华大学镜像站的安装命令: pip install --index-url=https://pypi.tuna.tsinghua.edu.cn.../simple/ --trusted-host pypi.tuna.tsinghua.edu.cn django 1.2.2 离线安装方法 如何将离线包批量安装?...l 前台主页http://127.0.0.1:8000 l 后台主页http://127.0.0.1:8000/admin/ 在manage.py目录下操作可以自行创建一个后台管理员账号,使用如下命令:...python manage.py createsuperuser 图1.8创建管理员账号 第五步:在框架中创建自己的应用程序 我们实际业务中,往往可以能在一个大的应用系统中包含多个小的应用系统,那么我们就可以通过如下方式在

    1K40

    带你构建你的的第一个Python和Django应用程序

    一个优秀的虚拟环境管理员可免费获得virtualenv。我们将使用Python的包管理器pip来安装这个和其他的包,比如Django,我们将在后面要求。首先,让我们virtualenv安装。...网址和模板 当我们运行服务器时,显示了默认的Django页面。我们需要Django来访问我们的howdy应用程序,当有人去的主页网址是/。...为此,我们需要定义一个URL来告诉Django在哪里寻找主页模板。 打开urls.py内部helloapp文件夹内的文件。它应该看起来像这样。...当有人访问主页(在我们的例子中是http:// localhost:8000)时,Django将在howdy应用程序中寻找更多的url定义。...现在运行服务器并访问主页应该显示我们的原始模板,并添加到关于页面的新增链接。 点击About me链接应该引导你到About页面。

    2.6K50

    如何从Django应用程序发送Web推送通知

    : pip install django-webpush 安装软件包后,将其添加到settings.py文件中的应用程序列表中。...该 send_push 视图将使用Django-Webpush库发送包含用户在主页上输入的数据的推送通知。...首先,添加include输入以确保将Django-Webpush库的所有路由添加到项目中: """webpushdjango URL Configuration ... """ from django.contrib...第6步 - 设置主页样式 在设置应用程序以提供静态文件后,您可以创建外部样式表并将其链接到home.html文件以设置主页样式。所有静态文件都将存储在项目根文件夹的static目录中。...您将看到如下所示的屏幕: 在此屏幕上输入您的Django管理员用户信息。您现在可以发送推送通知了。 在您的浏览器中访问https://ngrok_secure_url。

    9.8K115

    如何启用和连接Django管理界面

    第一步 - 启用管理员 首先激活您的Python虚拟环境: $ cd ~/my_blog_app $ . env/bin/activate 为了开启Django管理权限,我们需要将它添加到INSTALLED_APPS...[登陆界面] 进入此屏幕显示我们已成功启用管理员应用,虽然我们已启用该应用程序,但目前我们还没有Django管理帐户。我们需要创建管理员帐户才能登录。...(env) sammy@ubuntu:$ nano urls.py 将以下代码行添加到文件中。...第五步 - 将博客应用程序连接到管理员 将我们的博客连接到管理员将允许我们查看管理仪表板内部Posts和Comments内部的链接。...第六步 - 验证博客应用程序是否已添加到管理员 现在您已经添加了相关的Python代码,请运行服务器。

    2.7K80

    用python搭建一个校园维基网站(二)—— 可编辑内容的首页的创建

    现在创建我们的主页模型,主要元素如下: ?...WikiHomeTopLink类似,为了层次上更清晰,采用了多重继承,在models.py中只定义ParentalKey外键,而在另一个文件中定义了RelatedLink模型,包含的字段有链接文本和具体链接...,只是具体链接可能为外链、某个页面或某个文档,占用了三个字段,此外还利用@property装饰器为该模型添加了link属性,来返回它的具体链接,这样在模板中就可以使用.link调用。...它有一系列现成的layouts供我们使用,选择最适合本次主页的样式,查看源码可以得到详细的信息,在这里,为了简便,我们直接使用了该layout的额外样式表的链接(最好处理为本地的css样式文件,使用Django...全部代码与样例页面所在数据库在github上,wagtail-tutorial-1,可直接运行,管理员账号lake,密码123,也可另创管理员

    3.6K80

    MySQL MHA部署添加LinuxUnix基本信息至Django

    前面介绍了如何使用Python获取Linux/unix系统的CPU 内存数据 这里我们使用Djangp批量获取 在此之前我们需要用到以前的知识,大家可以重温下 首先我们需要将Linux/Unix信息放入Django...的MySQL数据库中 如主机名账号密码等 具体的原理可参考如下链接 使用Django管理数据库表 开发环境 操作系统:CentOS 7.4 Python版本 :3.6 Django版本: 1.10.5...为以后监控日志所需 os_log 如需要监控操作系统日志则可在这里填写os日志的路径 monitor_type 判断是否需要监控该机器 performance_type 判断是否需要获取CPU等信息 Django.../ 同步数据库 python manage.py makemigrations python manage.py migrate 添加该表至admin后台 vim admin.py from django.contrib...5.源代码位置 欢迎访问我的github主页查看源码 https://github.com/bsbforever/oms_django 好了,这节介绍了如何将Linux/Unix的信息放入Django

    87510

    【Web开发 | Django】数据库分流之道:探索Django多数据库路由最佳实践

    ‍♂️ 个人主页: @AI_magician 主页地址: 作者简介:CSDN内容合伙人,全栈领域优质创作者。 ‍景愿:旨在于能和更多的热爱计算机的伙伴一起成长!!‍ ‍...默认主键,还要再app.py中设置对应默认主键字段),或者修改django中的应用,主键配置。...] > company/models.py 创建router数据库路由类并添加到settings 我们既然是多数据库路由,那么在对表进行增删改查就需要进行区分,路由类router则充当了这个角色 创建路由类...路由必须要有四个函数 db_for_read 读 db_for_write 写 allow_relation 数据库之间链接关系 allow_migrate 是否允许迁移数据 """ setting/...meta.app_label in self.router_app_labels: return 'employee' return 'default' # 不允许数据库之间链接关系

    32041

    关于“Python”的核心知识点整理大全53

    18.3 创建网页:学习笔记主页 使用Django创建网页的过程通常分三个阶段:定义URL、编写视图和编写模板。首先,你必 须定义URL模式。...URL模式描述了URL是如何设计的,让Django知道如何将浏览器请求与网站 URL匹配,以确定返回哪个网页。 每个URL都被映射到特定的视图——视图函数获取并处理网页所需的数据。...就 目前而言,主页只显示标题和简单的描述。 18.3.1 映射 URL 用户通过在浏览器中输入URL以及单击链接来请求网页,因此我们需要确定项目需要哪些 URL 。...每当需要提供到这个主页链接时,我们 都将使用这个名称,而不编写URL。 注意 正则表达式通常被称为regex,几乎每种编程语言都使用它。它们的用途多得难以置信, 但需要经过一定的练习才能熟悉。...下面的代码演示 了该如何为主页编写视图: from django.shortcuts import render def index(request): """学习笔记的主页""" return

    10410

    接口测试平台代码实现14:注册功能和后台管理

    我们就放在右上角吧,放在主页按钮下面,我们之后把这些功能按钮全都一股脑的塞到右上角,整合成一个小整体 之后样式上还能更有作为。 如上图所示,给原来的主页按钮 外面包裹一层 div。...刷新页面看看效果: 注意border-radius属性的运用,这个是按钮的圆角,主页按钮不需要圆角了。退出按钮的左下角是圆角。...然后我们修正退出按钮的超链接,从/home/改成 /logout/ 然后去urls.py中补充好该映射: 注意这个细节,urls.py中的url,前面只有^ 没有 / 。...接下来我们要讲讲django的自带后台! 其实django早就有自带后台了,在你刚启动成功的第一次就有,只是你一直不知道。...好的 这里我们只能通过管理员账号密码 来登陆。但是我们貌似并不知道管理员账号是什么?我们之前自己注册的都只是普通用户,根本无权限登陆这个后台。那么我们要如何创建超级管理员呢?

    62140

    关于“Python”的核心知识点整理大全60

    你使用方法filter()来 获取合适的数据,并学习了如何将请求的数据的所有者同当前登录的用户进行比较。 该让哪些数据可随便访问,该对哪些数据进行保护呢?...在本节中,我将简要地介绍应用程序django-bootstrap3,并演示如何将其继承到项目中,为 部署项目做好准备。...图20-1显示了对base.html应用这个Bootstrap模板并对index.html做细微修改后的主页。 知道要获得的效果后,接下来的内容理解起来将更容易。...在3处,我们在导航栏的最左边显示项目名,并将其设置为到主页链接,因为它将出现在 这个项目的每个页面中。 在4处,我们定义了一组让用户能够在网站中导航的链接。...选择器 navbar-right设置一组链接的样式,使其出现在导航栏右边——登录链接和注册链接通常出现在 这里。在这里,我们要么显示问候语和注销链接,要么显示注册链接和登录链接

    12710

    Django | 安全防护】CSRF跨站伪请求和SQL注入攻击

    ‍♂️ 个人主页: @计算机魔术师 ‍ 作者简介:CSDN内容合伙人,全栈领域优质创作者。...import Group, User from django.views.decorators.csrf import csrf_exempt from django.contrib.auth.decorators...攻击者提供一个页面,诱导管理员点击该页面,此时改url会自动提交,改url会直接调用之前创建管理员的页面,创建用户 作为黑客,我现在创建一个页面,在超级管理员点击改页面链接便会自动创建....这里演示是让管理员自动创建了一名hr,但实际上我们还可以进行账号转账,信息泄露等其他操作。...四、解决办法 我们只要使用django自带csrf 处理即可,django在处理每一个页面都会传递一个csrf_token,在表单form中则需要添加{% token %} 在页面渲染出来,这样客户端页面会将

    74650
    领券