Django之admin 一

在后台界面下我们可以增加删除用户。

点击下面的增加可以新增用户



可以看到下面会指示输入用户名以及密码



那么如果我们想修改各个用户的权限以及信息应该如何呢:点击修改可以修改各个用户的信息以及权限。具体可以点进去看下



下面进入关键部分,前面只有用户的信息,如何来监控我们自己定义的模块呢。比如我们在models.py中定义的那些模型如何在后台显示出来呢。我们先看下Django的文件结构,可以看到有一个admin.py的文件。这里就是我们对模型进行注册的地方。




我们首先对这些模块进行注册,代码如下



我们再来看下管理界面:可以看到已经增如如下的界面,里面有我们注册的各个模块




那么这些模块的信息是否和我们之前已经创建过的一样呢。我们拿Person2来举例,我们之前通过URL新建了不少用户信息。点击Person2可以看到如下的用户。




点击其中的用户信息,可以看到2个字段:name和Age。这2个字段正好是我们模型里面定义的。在这里可以自动的修改和删除。




我们可以通过管理界面的增加按钮添加对应的模块



如下图所示:




这些选项和我们模板中的定义的都一样。每一个都是必填项。如果我们添加的时候有一项没有添加,则会报错,如下,提示Address字段是必填项




那么我们怎么能修改某些项为非必填的呢。这需要在模板中修改定义。在address的具体定义中增加blank=True的描述,那么这项就变成了非必填项




可以看到address的颜色变成了灰色。



同样的使用方法还有verbose_name字段,这个设置可以给这些项添加一个别名。如下address将会显示为detail_address

address=models.CharField(max_length=40,blank=True,verbose_name='detail_address')

之前新增了一个author。点击查看的时候除了能看到名字意外,其他如名字,邮件,和地址等信息都看不到。



如果我们想显示出的信息,需要修改代码如下。在admin.py中修改如下:

简单介绍下,我们新增了一个显示模板,只定义了一项,就是显示名称的元组。用于列表显示。然后在register中新增了AuthorAdmin,这个可以理解为将AuthorAdmin模块注册到Author中去

class AuthorAdmin(admin.ModelAdmin):
    list_display=('first_name','last_name','email','address')
 
admin.site.register(Author,AuthorAdmin)
从下面的解释中可以看到,如果第二个参数没有设置,那么模板将会继续使用第一个参数的模板


我们现在来看下界面:可以看到增加了各个具体字段的显示。其他模板如果要显示也是同样的方法。如果要改变显示的顺序,在AuthorAdmin中添加fields字段来显示顺序就可以了

类似的还有search_fields(搜索框)list_fitler(过滤),ordering(排序)等




我们来看另外一个模板,Book,其中authors的定义是manytomanyFiled。这是什么意思呢,通俗理解就是多对多。就比如一本书的作者有多个不知一个的意思。

class Book(models.Model):
    title = models.CharField(max_length=100)
    authors = models.ManyToManyField(Author)
    publisher = models.ForeignKey(Publisher)
    publication_date = models.DateField()
    def __unicode__(self):
        return self.name

如下在Authors的界面中可以看到2个之前新增的用户




另外注意Publisher,在模板中的定义是ForeignKey也就是数据库中的外键。我们添加的时候会自动跳到Publisher的界面



后台的介绍就在这里。那么什么情况下才会用到后台呢。比如搭建了网站后便于网站编辑人员之间进入后台进行内容编辑。比如一个门户网站,记者采访到了信息后直接在后台进行新闻编辑。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿玩AI

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值