上文讲到通过命令实现数据的增删改查,其实完全不用这么麻烦,django项目在创建的时候,系统自动帮忙创建了一个后台管理系统admin。还记得settings文件下INSTALLED_APPS数组中的第一个应用吗,'django.contrib.admin',这个就是后台管理系统。
启动项目,然后打开127.0.0.1:8000/admin/,会打开以下界面:
1.png
你会蛋疼滴发现不知道账号密码,不要急,我们来创建一个账号,打开终端使用manage.py的createsuperuser命令创建一个用户:
2.png
需要你输入用户名、邮箱、密码,会提醒你用系统的用户名。我们在这里创建了一个叫yucanghai(别纠结这个)的账号,在后台页面输入账号密码:
3.png
好吧,全部是英文的,我相信你看得懂,但还是觉得不爽,那我们把它改成中文吧,打开系统的settings.py文件,找到
# Internationalization# https://docs.djangoproject.com/en/1.11/topics/i18n/LANGUAGE_CODE ='en-us'TIME_ZONE ='UTC'USE_I18N =TrueUSE_L10N =TrueUSE_TZ =True
将LANGUAGE_CODE改一下即可
# Internationalization# https://docs.djangoproject.com/en/1.11/topics/i18n/LANGUAGE_CODE ='zh-hans'TIME_ZONE ='UTC'USE_I18N =TrueUSE_L10N =TrueUSE_TZ =True
再刷新一下后台页面,界面就变成中文了。此时后台中并没有看到我们创建article相关的内容,这是因为我们需要在blog应用下的admin.py文件中将models中的内容注册一下:
fromdjango.contribimportadminfrom.modelsimportArticleadmin.site.register(Article)
再刷新一下后台的界面,神奇的一幕发生了:
4.png
顶部多了一个Articles的管理模块,你可以点进去看一下,可以实现其增删改查。
5.png
列表上标题Article object是什么鬼?这肯定是django将一个对象直接返回到列表了,还是将这个对象的标题显示出来,我们回到blog下models.py文件中,增加一个方法,如下:
fromdjango.dbimportmodelsfromdjango.contrib.auth.modelsimportUserclassArticle(models.Model):title = models.CharField(max_length=32, default='')# 文章正文,使用的是TextField# 存储比较短的字符串可以使用 CharField,但对于文章的正文来说可能会是一大段文本,因此使用 TextField 来存储大段文本。content = models.TextField(null=True)def__str__(self):returnself.title
再刷新一下界面,列表上就显示了文章的标题了
网友评论