Django中Admin管理与权限管理(一)————模型创建

Django下模型创建
1.创建应用
在已经存在的Django项目中通过如下命令创建一个名为notice的应用。


创建成功后,我们可以看到如下所示的内容:


2.新建简单的GfzNotice模型
按照如下的方式,给Notice模型创建两个属性,一个是title表示标题,一个是content表示内容。
from django.db import models
# Create your models here.
# add by chr 20160719
class GfzNotice(models.Model):
    title = models.CharField(max_length=50, default='')
    content = models.TextField(default='')
这时我们需要在配置文件中加上这个APP,否则同步数据库时不会添加该应用的模型信息。在配置文件的INSTALLED_APPS中按照如下方式配置相关信息:
INSTALLED_APPS = (
    ...
    # 通知部分
    'notice',
)
3.同步数据库
首先通过python manage.py makemigrations 生成迁移文件,如下图所示在notice中生成了0001_initial.py文件。


接下来通过python manage.py migrate 来实现迁移,如下图所示:


到这数据库就已经同步成功了。
4.查看Admin中的管理效果
1.启动服务
通过python manage.py runserver命令来完成服务的启动,启动之后如下图所示:


2.登录系统
访问http://127.0.0.1:8000/admin/login/,使用自己创建的超级管理员账号进行登录(本地的账号为chr,密码为123)。 


登录后的效果如下图所示,但到这里可以返现站点管理中并没有我们创建的GfzNotice模型的管理。所以我们还需要配置其可在Admin中进行管理。


3.配置管理
在notice应用下的admin.py完成如下的配置:
from django.contrib import admin
from notice.models import GfzNotice
# Register your models here.
# add by chr 20160719
admin.site.register(GfzNotice)
这时候我们刷新Admin的管理站点,显示如下的效果: 这是我们可以看到有一个栏目的名称为Notice(对应到APP),下面有一个可以管理的Gfz notices对象。但是展示给用户时,不能以英文单词的形式(不便于理解),这就是我们后面会完成的呢,在这里先提一下。


4.默认生成的页面
1.新增页面:
点击新增gfz notice弹出下面的新增页面内容,不过Title、Content都是已英文字段的形式进行了显示,这当然不是我们想要的效果,后面修改模型时会给大家介绍这部分的修改过成功。然后按照下面方式保存这个通知。
这里需要大家注意的是,在我们创建的模型中Title是CharField所以对应到管理页面的新增或修改时的单行文本输入框,其中Content是TextField所以对应到的是多行文本输入框。后面还会有很多不同的对应关系,遇到的时候我会给大家进行更为详细的介绍。


2.列表页面
新增成功后,我们可以看到下面所示的默认内容,当然这个列表和我们想要的效果也是不一致的,后面会一并进行介绍。左下面的选择下拉框有选中后执行删除的操作。附录1的4.4.4中会给大家结合删除的过程。


3.修改页面
按照下图页面所示可对我们添加的通知进行修改后保存。


4.删除页面
通过附录1的4.4.2中左下面的选择操作点击执行后,会跳转到下图的删除操作,点击“是的,我确定”可以完成这条记录的删除。


5.小结
通过上面四个步骤的操作后,我们成功的创建了一个Notice的应用,并在默认的管理页面中可以完成对相关模型的管理。但是默认生成的管理元素与我们所需要的页面差别还是很大的。不过不用担心,我会在第二部分中详细的给大家进行相关介绍。
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值