Django---Django管理后台

我们都知道无论在测试app还是web页面的时候,都会有一个管理后台去配置这些应用展示的内容,那么我们的Django当然也不例外,今天来认识下Django管理后台

admin管理后台

Django管理后台不仅仅只可以配置应用前端,也可以对数据进行增删改查,最主要的是免费的~

默认设置

Django默认是没有管理后台的,这个需要自己创建,但是我们在创建前,需要在settings.py文件的INSTALLED_APPS中配置admin,当然Django这个也是默认给我们配置好的

# Application definition

INSTALLED_APPS = [
    'django.contrib.admin',          # 管理站点
    'django.contrib.auth',           # 认证系统
    'django.contrib.contenttypes',   # 用于内容类型的框架
    'django.contrib.sessions',       # 会话框架
    'django.contrib.messages',       # 消息框架
    'django.contrib.staticfiles',    # 管理静态文件框架
    'Anjing',             # Anjing应用


]

并且url.py文件中也会默认创建admin的访问地址

from django.contrib import admin
from django.urls import path

urlpatterns = [
    path('admin/', admin.site.urls),
]

创建管理后台

1、通过输入一下命令来创建admin站点用户

# 创建admin管理后台
 
python manage.py createsuperuser

首先输入账号名:admin,然后邮箱:再输入密码qweasdzxc,再次确认密码qweasdzxc,注意密码这里是看不到的直接输入即可(有时候密码太过于简单,但是我们也可以强制确认)
在这里插入图片描述
创建完成后,我们直接启动Django服务,打开浏览器进入管理员地址:http://127.0.0.1:8000/admin
在这里插入图片描述
输入我们刚才创建好的账号密码。点击log in 然后就登录成功了

在这里插入图片描述

修改admin密码

如果管理员的密码忘记了怎么办?怎么去修改呢?

方法一:执行以下命令进行操作修改

# 修改管理后台密码
# admin 表示用户名

python manage.py changepassword admin

按照指示完成修改密码(这里修改太简单的好像没办法通过~~)
在这里插入图片描述
方法二:

通过终端进入到shell命令中,输入以下命令

python manage.py shell

from django.contrib.auth.models import User
u = User.objects.get(username='admin') # 账号名
u.set_password('test1234')     # 新密码
u.save()

在这里插入图片描述

管理后台显示中文

这里我们会发现管理后台都是英文,我想大多数都会感觉看着不舒服,既然是我们自己的后台,有没有办法设置成中文呢?Django这么强大,肯定有了,我们只需要修改sttings.py配置文件中找到以下代码

其中LANGUAGE_CODE 表示是语言,TIME_ZONE 表示的是时区

# Internationalization
# https://docs.djangoproject.com/en/2.2/topics/i18n/

LANGUAGE_CODE = 'en-us'    # 语言

TIME_ZONE = 'UTC'    # 时区

USE_I18N = True

USE_L10N = True

USE_TZ = True  

我们只需要更改上面两条数据,就可以了

# Internationalization
# https://docs.djangoproject.com/en/2.2/topics/i18n/

# LANGUAGE_CODE = 'en-us'

LANGUAGE_CODE = 'zh-Hans'    # 语言

# TIME_ZONE = 'UTC'

TIME_ZONE = 'Asia/Shanghai'    # 时区

更改完成后,我们重新进入到管理后台中查看,发现已经更改成功了
在这里插入图片描述
如果在设置过程中出现报错: You have provided a value for the LANGUAGE_CODE setting that is not in the LANGUAGES setting

如果没有遇到的请跳过继续看

这个报错时在Django3的版本后,如果设置完sttings.py中的LANGUAGE_CODE 和 TIME_ZONE后,启动Django就会报出以上错误

解决方法:

# 需要在sttings.py中增加LANGUAGES配置

from django.utils.translation import gettext_lazy as _
LANGUAGES = [
    ('zh-Hans', _('Chinese')),
]

LANGUAGE_CODE = 'zh-Hans'

修改完成后,再次启动Django就会发现问题已经解决了

后台显示登录数据

前面安静写了一个登录页面,只要登录后数据信息都会保存在数据库中,这里我想把登录的数据展现到后台管理中。需要在admin.py文件中进行把表名导入即可

文件:admin.py

from django.contrib import admin
from Anjing import models
# Register your models here.

# 导入数据库
admin.site.register(models.User)
文件:model.py

from django.db import models

# Create your models here.
from django.db import models

class User(models.Model):
    username = models.CharField(max_length=32)
    password = models.CharField(max_length=32)

添加完成后,重新刷新下页面,就可以了(来个动图体会下~~)
在这里插入图片描述
如果不确定数据是否添加过来,可以直接打开数据库查看是否显示完成,这里我们可以看到数据是一致的
在这里插入图片描述
点赞关注~~持续分享,加入我们,了解更多。642830685,免费领取最新软件测试大厂面试资料和Python自动化、接口、框架搭建学习资料!技术大牛解惑答疑,同行一起交流。

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值