Django 入门学习总结8-管理页面的生成

修改polls/admin.py文件为:

from django.contrib import admin
from .models import Choice, Question

class ChoiceInline(admin.StackedInline):
    model = Choice
    extra = 3

class QuestionAdmin(admin.ModelAdmin):
    fieldsets = [
        (None, {"fields": ["question_text"]}),
        ("Date information", {"fields": ["pub_date"], "classes": ["collapse"]}),
    ]
    inlines = [ChoiceInline]

admin.site.register(Question, QuestionAdmin)

这时,再次输入管理员页面地址 http://127.0.0.1:8000/admin/polls,在管理页面添加问题时,会有三个选项出现。


 

输入完信息后,主题和三个选项会一块保存到数据库中。

也可以修改为class ChoiceInline(admin.TabularInline),将会以表格的方式显示三个选项。

增加以下内容,则主题的内容将会以三列显示。

class QuestionAdmin(admin.ModelAdmin):
        # ...
        list_display = ["question_text", "pub_date", "was_published_recently"]

当跳转或输入网址http://127.0.0.1:8000/admin/polls/question/时,显示如下图所示。

当点击每列的头部时,可以排序显示每列的信息。

修改polls/models.py文件,可以对排序进行更详细的设置。

from django.contrib import admin


    class Question(models.Model):
        # ...
        @admin.display(
            boolean=True,
            ordering="pub_date",
            description="Published recently?",
        )
        def was_published_recently(self):
            now = timezone.now()
            return now - datetime.timedelta(days=1) <= self.pub_date <= now

编辑polls/admin.py文件,在QuestionAdmin最下边添加一行:

list_filter = ["pub_date"]

则页面的最右边有过滤条件。

当添加一行

search_fields = ["question_text"]

时,则会出现搜索页面。

上图显示的为搜索结果页面。

当然,也可以对显示的页面进行分布显示。

自定义模块

在manage.py同一个位置,新建文件夹templates。

打开mysite/settings.py文件,添加以下的内容(只修改了一行):

 TEMPLATES = [
        {
            "BACKEND": "django.template.backends.django.DjangoTemplates",
            "DIRS": [BASE_DIR / "templates"],
            "APP_DIRS": True,
            "OPTIONS": {
                "context_processors": [
                    "django.template.context_processors.debug",
                    "django.template.context_processors.request",
                    "django.contrib.auth.context_processors.auth",
                    "django.contrib.messages.context_processors.messages",
                ],
            },
        },
    ]

配置信息 DIRS <TEMPLATES-DIRS>用于当加载时,查找模板所在的位置。

在templates中建立admin文件夹。

我们可以从django/contrib/admin/templates将系统的管理页面admin/base_site.html复制到这个文件夹中。

如果不知道系统管理页面在哪个位置,也可以输入以下命令进行查找:

python -c "import django; print(django.__path__)"

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/170828.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

系列十四、异步回调

一、概述 二、案例代码 /*** Author : 一叶浮萍归大海* Date: 2023/11/21 10:45* Description: 异步任务案例代码*/ public class CompletableFutureMainApp {public static void main(String[] args) throws ExecutionException, InterruptedException {CompletableFuture<…

WMS仓库管理系统的应用场景有哪些?

“WMS仓库管理系统的应用场景有哪些&#xff1f;” WMS&#xff08;仓库管理系统&#xff09;作为一种强大的工具&#xff0c;它在提升仓库操作效率、优化库存管理以及改善供应链可视性方面发挥着关键作用。那么&#xff0c;WMS究竟在哪些场景下展现出强大的应用价值呢&#x…

【HarmonyOS】低代码平台组件拖拽使用技巧之列表

【关键字】 HarmonyOS、低代码平台、组件拖拽、列表、列表项 1、写在前面 我们在日常开发中使用最多的组件可能就是列表组件了&#xff0c;现在几乎所有的应用都离不开列表&#xff0c;那么今天我们就来介绍一下如何利用低代码平台来实现列表的展示&#xff0c;列表实际上也是…

react重要知识点(面经)

react重要知识点&#xff08;面经&#xff09; react生命周期classhooks reduxredux 核心概念redux 计数器案例 react页面加载卡顿使用懒加载异步加载JavaScript压缩和缓存静态资源使用React.memo() PubSub使用方式1.1 react导入库1.2 react 页面引入pubsubjs1.3 pubsubjs使用2…

高斯分布。

(5 封私信 / 80 条消息) 正态分布 - 搜索结果 - 知乎 (zhihu.com)https://www.zhihu.com/search?typecontent&q%E6%AD%A3%E6%80%81%E5%88%86%E5%B8%83正态分布&#xff08;Normal Distribution&#xff09;&#xff0c;也称常态分布&#xff0c;又名高斯分布&#xff08;G…

(影视源码)最新苹果CMS海螺影视V20模板源码/影视网站程序源码/后台全修复版+广告代码添加与优化

源码简介&#xff1a; 这个是2023最新苹果CMS海螺影视程序模板源码&#xff0c;V20电影影视网站源码&#xff0c;它后台全修复版广告代码添加与优化。海螺模板一直是苹果cms比较好看的模板。苹果CMS就是影视解析的PHP源码&#xff0c;站长朋友可以拿去搭建一个影视站引流&…

Python运维监控系统之架构设计

说起Python这门编程语言的作用&#xff0c;可以列举很多方面&#xff0c;其实每一门流行的编程语言都可以列举很多方面&#xff0c;但是要说起Python的主要领域&#xff0c;莫过于运维监控方面&#xff0c;在这方面有大量优秀的开源运维系统。 虽然有很多优秀的开源运维监控系统…

算法设计与分析算法实现——删数问题

通过棋盘输入一个高精度的正整数n(n的有效位数<=240)去掉其中任意s个数字后,剩下的数字按原左右次序将组成一个新的正整数。变成对给定的n和s,寻找一种方案,使得剩下的数字组成的新数最小。 输入:n,s 输出:最后剩下的最小数 输入实例: 178543 4 输出示例: 13 首先…

U盘恢复怎么做?3个宝藏方法分享!

“我经常都会把各种数据保存在u盘中&#xff0c;但是不知道为什么&#xff0c;有时候经常会出现u盘数据丢失的情况。有什么方法可以恢复U盘吗&#xff1f;请朋友们给我出出主意吧&#xff01;” 由于u盘的小巧便捷&#xff0c;很多用户都会选择将文件保存在u盘中。但是在使用u盘…

Windows10环境下Python解析pacp文件

Windows10环境下Python解析pacp文件 一、背景 在Python中,你可以使用scapy库来解析pcap文件。scapy是一个功能强大的网络分析工具,可以用于解析、构建和发送网络数据包。 二、环境安装 命令在终端中安装: pip install scapy由于我使用的Pycharm,所以我就直接在Python Int…

Java零基础-Mybatis篇

【Mybatis】 1.JDBC不足 JDBC作为Java操作数据库的模板&#xff0c;如果想要对数据库进行操作&#xff0c;必须使用JDBC&#xff0c;但是在使用JDBC进行数据库操作时&#xff0c;重复代码多&#xff0c;动态SQL构建繁琐&#xff0c;将查询结果转化为对象&#xff0c;相当麻烦…

hologres 索引与查询优化

hologres 优化部分 1 hologres 建表优化1.1 建表中的配置优化1.1 字典索引 dictionary_encoding_columns1.2 位图索引 bitmap_columns1.2.2 Bitmap和Clustering Key的区别 1.3 聚簇索引Clustering Key 1 hologres 建表优化 1.1 建表中的配置优化 根据 holo的 存储引擎部分的知…

【Python测试开发】:切换窗口和表单

一、多窗口切换 浏览器打开的窗口其实会有一个叫做句柄的概念。 句柄就类似于每一个标签页的ID一样&#xff0c;具有唯一性。 1.1 语法 获取当前窗口句柄&#xff0c;注意后面没有括号哦~ driver.current_window_handle获取所有窗口句柄&#xff0c;结果以列表格式存储&am…

Simulia 2022 新功能

增材制造 达索系统增材制造解决方案实现了端到端一体化全流程解决方案&#xff0c;可以实现从原材料研究到创成式设计、工艺设计、工艺仿真仿真、并且还延续到增材制造完成后的热处理、线切割等工艺&#xff0c;涵盖了各个方面的内容。 达索系统针对增材制造各个环节在每一个…

一整个分析模型库,大数据分析工具都这么玩了吗?

一整个分析模型库&#xff0c;100张BI报表&#xff0c;覆盖销售、财务、采购、库存等多个分析主题。只需对接ERP&#xff0c;就能自动生成BI报表&#xff0c;完成对海量数据的系统化分析。现在大数据分析工具都发展到这种程度了吗&#xff1f; 放眼看去&#xff0c;现阶段能做…

在线客服系统源码 聊天记录实时保存 附带完整的搭建教程

在线客服系统是一个企业网站进行网络营销的最重要的工具。企业进行网络宣传后&#xff0c;会有很多访客进入到网站&#xff0c;这时候网站就需要有在线客服人员进行接待&#xff0c;及时的与访客进行沟通&#xff0c;才能留住访客&#xff0c;变流量为销量。 在线客服系统可以…

销售团队可以借助CRM系统做什么?

销售主管都想有一支效率高、质量高的销售团队&#xff0c;无论对于初创企业还是大型企业销售团队都是企业盈利的主力部门&#xff0c;直接为企业带了业绩。如何提升销售团队水平&#xff1f;离不开CRM系统的辅助&#xff0c;CRM软件能为销售团队提供哪些支持&#xff1f;下面我…

队列OJ--循环队列

目录 题目链接&#xff1a;622. 设计循环队列 - 力扣&#xff08;LeetCode&#xff09;​​​​​ 题解&#xff1a; ​编辑 代码实现&#xff1a; 完整代码&#xff1a; 题目链接&#xff1a;622. 设计循环队列 - 力扣&#xff08;LeetCode&#xff09;​​​​​ 题解&#x…

高质量简历写作求职通关-前言

(点击即可收听) 在如今大内卷的环境下 无论哪个行业,都竞争激烈 2023年的毕业生人数已达到1158万人&#xff0c;本科毕业人数约700万人&#xff0c;研究生毕业人数约119万人 其中,北京市的就有28.5万名高校毕业生中&#xff0c;硕博毕业生人数首次超过本科生... 可见学历的通胀…

各类Linux操作系统如何选择?

各类Linux操作系统如何选择&#xff1f; 企业级应用&#xff1a;RHEL/CentOS 桌面平台&#xff1a;Ubuntu 开源服务器&#xff1a;CentOS 1.1 RedHart 1.1.1RHEL RHEL是指Red Hat Enterprise Linux&#xff0c;是由Red Hat公司开发和维护的一款商业Linux操作系统。它是基于…