django入门2
四、Admin站点管理
1、站点介绍
在shell下面去编辑博客非常麻烦,前面提到过django自带强大的功能,其中就有一个内容管理。 下面我们来使用
django自带的Admin站点管理去编辑我们的blog内容。
Django是在新闻编辑室这样的环境中被开发出来的,这样的环境中“内容发布者”站点和“公共”站点有着非常明显的界限,网站管理者使用管理界面来添加新闻故事、新闻事件、体育比赛分数等。这些内容会被展示在公共站点上。Django为网站管理者创建统一的管理界面用以编辑这些内容。
Django会根据模型类文件完全自动地生成管理界面。
管理界面不是让访问网站的人使用的,它服务于网站管理者,用于网站的管理员。
2、创建管理员账号
启动开服服务器:
在浏览器中输入 http://127.0.0.1:8000/admin 进入后台管理,但是需要管理员账号密码。默认是没有的,需要开发者创建。
创建后台管理员账号,执行这创建管理员账号命令
执行上面命令后输入按提示输入
用刚才创建的账号密码 登录
3、管理界面本地化
首次登录之后是英文界面,后台管理是给管理员使用的,英文界面阅读起来就比较困难了,这里可以将后台管理本地化。 本地化是将显示的语言、时间等使用本地的习惯,这里的本地化就是进行中国化,中国大陆地区使用简体中文,时区使用亚洲/上海时区,注意这里不使用北京时区表示。
管理界面本地化修改setting.py文件,找到下面两行配置修改
LANGUAGE_CODE 语言 'zh_hans' 表示中文 TIME_ZONE 时区 'Asia/Shanghai' 亚洲/上海
修改好配置之后重启服务:刷新后台管理界面就使用中文显示了
但我们的应用在哪儿? 它没有显示在管理站点的首页面上。
4、注册模型类
如果想要在后台中能编辑的模型类,我们只需要在应用目录下的admin.py中注册模型类:下面这段代码加入到personal_blog/admin.py中,向admin中注册博客的模型类。
重新启动服务刷新后台管理界面,后台管理界面就可以看到所有的模型类了:
点击类名称“Posts”可以进入列表页,默认只有一列,显示的是模型类中 str 方法返回的值
给模型类都添加上str方法
添加str方法后,Post列表页显示str返回的title值
进入post列表页可进行操作。
在列表页中点击“增加”可以进入增加页,Django会根据模型类的不同,生成不同的表单控件,按提示填写表单内容后点击"保存",完成数据创建,创建成功后返回列表页
关系字段添加方法
在列表页勾选想要删除的复选框,可以删除多项
点击执行之后会提示,删除内容,询问是否删除,包括关系数据都会一起被删除。 点击确定数据将会被删除,返回则不做删除操作。

浙公网安备 33010602011771号