python界面设置-Python进入后台界面(admin)设定
用过Django框架的童鞋肯定都知道,在创建完Django项目后,每个app下,都会有一个urls.py文件,里边会有如下几行:
※特别要注意下面标红颜色的部分[] 一般情况下不需要修改什么东西,只需要把括号修改一下即可
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls),
]
上边看到导入的admin模块,就是本节所要说的主要内容
主要功能
功能1:提供数据库管理功能
基于admin模块,可以实现类似数据库客户端的功能,对数据进行增删改查
功能2:二次开发
基于该模块的数据管理功能,可以二次定制一些实用的功能。
使用方法
步骤1:在settings.py中,INSTALLED_APPS中,加入django.contrib.admin
默认生成的,不需要变动
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth', #admin依赖
'django.contrib.contenttypes', #admin依赖
'django.contrib.sessions', #admin依赖
......
]
步骤2:urls.py创建admin路由
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls),
....
]
步骤3:在settings.py配置文件中,中间件注册
默认生成的,不需要变动
MIDDLEWARE = [
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
....
]
步骤4:创建admin管理用户
python manage.py createsuperuser
步骤5:在app 的models.py文件中创建表信息,即表类
from django.db import models
class Gender(models.Model):
name = models.CharField(max_length=32)
class userinfo(models.Model):
nid = models.AutoField(primary_key=True)
name = models.CharField(max_length=30, verbose_name='用户名',editable=False)
email = models.EmailField(db_index=True)
memo = models.TextField()
img = models.ImageField(upload_to='upload')
user_type = models.ForeignKey("UserType", null=True, blank=True)
gender_choices = (
(0, "男"),
(1, "女"),
)
gender = models.IntegerField(choices=gender_choices,default=1)
class UserType(models.Model):
name = models.CharField(max_length=32)
def __str__(self):
return self.name
步骤6:在admin.py中注册表
from django.contrib import admin
# Register your models here.
from app01 import models
admin.site.register(models.userinfo)
admin.site.register(models.UserType)
步骤7:生成表结构
python manage.py makemigrations && python manage.py migrate
注意:在数据库表结构发生变动时,再次执行python manage.py makemigrations就会报错,这是因为此时表中可能已经有数据,貌然变动表结构会有影响,此时的解决方法有两种,一种是,设置新增字段的default='xxx'某个值, 但是这种通用性不是很好。 另外一种是,设置该字段null=True。即允许为空即可
步骤8:运行项目,登陆管理界面
python manage.py runserver
访问URL:http://IP:8000/admin
最终展示页面
显示出来这个页面,就表示admin已经可以正常管理了。
显示优化
优化1:显示字段信息
这时候去UserType里边添加几条数据后,会发现这几天数据都显示User Type object,显示很不友好。图示如下
处理办法就是去models.py中,修改class UserType类,增加
1
2
def __str__(self):
return self.name
增加之后,再次查看,就会显示用户之前增加的可视名称了
优化2:优化表单信息为中文显示
在userinfo表中,设置了verbose_name='用户名',这个参数的作用就是在用户添加信息的时候,显示“用户名”,而不是默认的name
python界面设置-Python进入后台界面(admin)设定相关推荐
- python界面设置-PYTHON图形化操作界面的编程七__创建菜单
PYTHON图形化操作界面的编程七__创建菜单 十八.创建菜单 1.水平菜单的创建 创建菜单需要多条语句,所以这里通过实例来说明水平菜单的创建方法: 下面的语句可以在窗口中添加水平菜单,其中前四行语句 ...
- Python学生信息管理系统图形化界面-老师端-学生端项目实现
Student-information-management-system 本项目是一个学生信息管理系统,这个项目是用Python语言实现的,也实现了图形化界面的显示,同时也实现了管理员端,学生端两个 ...
- python编写的软件界面-用Python写一个带图形界面的文件压缩软件
这又是一篇用Python写小软件系列,最近有点写上瘾了,文件压缩和解压我们在日常工作学习中会经常用到,比如winrar.快压.好压等压缩软件,猿人学用Python做个简易图形界面的压缩软件. 打开之后 ...
- python做一个登录注册界面_Python 实现简单的登录注册界面
Python 实现简单的登录注册界面 注意:编写代码之前需要导入很重要的包 import tkinter as tk import pickle from tkinter import message ...
- 云端服务器跑python代码,断开后台运行
先跑到Xshell官网下载一个好用的SSH工具,推荐用:Xshell 下载网址:XSHELL - NetSarang Websitehttps://www.xshell.com/zh/xshell/ ...
- pythongui登录界面密码显示_用python写一个带有gui界面的密码生成器
需要用到的库: tkinter:构建gui界面 pyperclip:复制功能 random:生成随机数 string:处理字符串 代码: from tkinter import * import ra ...
- Python Web实时消息后台服务器推送技术---GoEasy
越来越多的项目需要用到实时消息的推送与接收,怎样实现最方便呢?我这里推荐大家使用GoEasy,它是一款第三方推送服务平台,使用它的API可以轻松搞定实时推送! 浏览器兼容性:GoEasy推送 支持we ...
- python通过tkinter和json界面库实现考研知识点统计
python通过tkinter和json界面库实现考研知识点统计 使用下列代码前必须安装tkinter和json库 一.实现简单界面: """ from tkinter ...
- Python编写的桌面图形界面程序实现更新检测和下载安装
在Python中我们有很多种方案来编写桌面图形用户界面程序,譬如内置的 Tkinter .强大的 PyQt5 和 PySide2 ,还有 wxPython .借助这些或内置或第三方的模块,我们可以轻松 ...
最新文章
- java操作xml文件--修改节点
- ArrayList、LinkedList和Vector
- C语言连接MYSQL存取数据的一个例子
- 用于计算机安全防护的有,《计算机安全防护》PPT课件.ppt
- 多线程处理海量数据的解决方案
- 看完这篇还不清楚Netty的内存管理,那我就哭了!
- [蓝桥杯][2016年第七届真题]冰雹数(暴力打表找规律)
- 1.linux系统基础笔记(互斥量、信号量)
- 周志华《机器学习》西瓜书第一章绪论第一部分
- 二叉树遍历(前中后序遍历代码及注释)
- 笔记本wifi共享出来能够连接但是没有网速
- Python入门-网络编程
- 最新版本Aid LearningV0.86安装注意事项
- 逻辑与计算机设计基础实验报告,逻辑与计算机设计基础--课实验的报告.doc
- pg事务篇(二)—— 事务ID回卷与事务冻结(freeze)
- Colab-免费GPU算力
- 分解质因数C语言实现
- Python 装饰器-基本概念
- 人工智能离不开它——贝叶斯公式的前世今生
- 论文阅读【6】Autoaugment: Learning augmentation strategies from data
热门文章
- go语言学习(3)面向对象,结构体和方法
- pyspark AttributeError: 'NoneType' object has no attribute 'setCallSite'
- confusion_matrix函数的使用
- 兼容ie跟谷歌上传文件
- Python—自动化部署工具:Fabric
- 常见Java集合的实现细节
- JavaScript四(DOM编程)
- javax.xml.transform.TransformerConfigurationException: Could not compile stylesheet
- 【BZOJ-3681】Arietta 网络流 + 线段树合并
- SetConsoleCtrlHandler 处理控制台消息