4-初识Django Admin

初识Django Admin

Django Admin是Django为我们提供的网站后台管理应用,通常网站,个人博客,CMS等都会有个后台管理界面,这个界面只有管理员权限的用户才能进入管理网站内容。管理后台的页面通常都是简单重复的工作,他们可重用性很高,所以作为一个大而全的框架,django为广大开发者提供了这样一个模块,让你无需编写很多的代码,就可以实现对后台的管理,使程序员能够更专注于前端页面逻辑和后端功能实现,大大提高了中小型网站的开发效率。

1、创建管理员用户

[root@localhost mysite]# python3 manage.py createsuperuser

运行上面面的命令后你就会进入到下面这种交互模式:

4-初识Django Admin

2、登录后台管理

创建好后台管理用户后,运行Django程序。

[root@localhost mysite]# python3 manage.py runserver 192.168.10.100:8000  # 开启Django服务

输入http://192.168.10.100:8000/admin/登录后台你会看到:

4-初识Django Admin

登录成功后你会看到如下界面:

4-初识Django Admin

如果不习惯英文,只需要在settings.py中将LANGUAGE_CODE=’zh-hans’即可改成中文。

[root@localhost mysite]# vim mysite/settings.py

修改后应该像下面这样:

4-初识Django Admin
[root@localhost mysite]# python3 manage.py runserver 192.168.10.100:8000  # 开启Django服务

刷新http://192.168.10.100:8000/admin/页面你就会看到中文了:

4-初识Django Admin

我们现在能看到的组管理和用户管理,都是由 <span class="pre"><a class="reference internal" title="django.contrib.auth: Django's authentication framework." href="https://docs.djangoproject.com/en/2.2/topics/auth/#module-django.contrib.auth" rel="noopener">django.contrib.auth</a>&#x4E3A;&#x6211;&#x4EEC;&#x63D0;&#x4F9B;&#x7684;&#x3002;&#x6211;&#x4EEC;&#x5728;polls/models.py&#x4E2D;&#x521B;&#x5EFA;&#x7684;&#x6295;&#x7968;&#x8868;&#x548C;&#x9009;&#x62E9;&#x8868;&#x5E76;&#x6CA1;&#x6709;&#x5728;&#x8FD9;&#x91CC;&#x3002;</span>

3、在后台中添加投票表(question)和选择表(choice),对其进行管理。

首先还是来看一下polls应用的目录结构:

4-初识Django Admin

知道polls/admin.py是用于后台管理的文件,我们在此将question表和choice表添加进去。

[root@localhost mysite]# vim polls/admin.py   # 将Question表和Choice表注册到admin.py中
from django.contrib import admin
from .models import Question
from .models import Choice

Register your models here.

admin.site.register(Question)
admin.site.register(Choice)

刷新http://192.168.10.100:8000/admin/页面你就会看到(如果看不到重启下Django):

3.1 像Questions表中添加数据

因为得现有问题后才能进行投票,所以先在Questions表中添加数据。点击页面中的增加,会看到如下界面:

保存后会跳转到如下界面:

现在我们就让上图的那个位置显示文本。我们需要编辑polls/models.py文件

[root@localhost mysite]# vim polls/models.py
from django.db import models

Create your models here.

class Question(models.Model):
    question_text = models.CharField(max_length=200)
    pub_data = models.DateTimeField('date published')
    # 添加如下内容
    def __str__(self):
        return self.question_text

class Choice(models.Model):
    question = models.ForeignKey(Question,on_delete=models.CASCADE)
    choice_text = models.CharField(max_length=200)
    votes = models.IntegerField(default=0)
    # 添加如下内容
    def __str__(self):
        return self.choice_text

添加数据后,重启Django服务:

[root@localhost mysite]# python3 manage.py runserver 192.168.10.100:8000

刷新http://192.168.10.100:8000/admin/polls/question/页面你就会看到:

后台管理部分就到这吧,关于后台的其它操作,就自行摸索吧。

了解Django为我们提供的python API接口

[root@localhost mysite]# python3 manage.py shell  # 进入接口

在该接口内可以对models.py进行操作。不过目前还不打算在这里就写,我觉得这个接口适合做临时测试用,不是特重要知道有这个东西就可以了。等写完这套Django2.2专题后有时间在来专门做一篇关于Django python API的博客。

参考文档:https://docs.djangoproject.com/en/2.2/intro/tutorial02/

小结:

本章节主要了解了Django为我们提供的Admin后台管理应用及简单使用,Admin后台使用流程如下:

  • 使用python3 manage.py createsuperuser先创建一个后台管理账号。
  • 在polls/admin.py中注册我们需要进行后台管理的表。
  • 如果表中的内容在后台无法正常显示,需要在models.py中表定义__str__(self)方法
  • 登录后台对表进行管理。如果管理界面是英文,将mysite/settings.py中的LANGUAGE_CODE=’zh-hans’即为中文。

Original: https://www.cnblogs.com/caesar-id/p/12322905.html
Author: id_iot
Title: 4-初识Django Admin

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/582608/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球