Django学习:shell和Admin增强(13)

本文介绍了如何使用Django的shell进行交互式操作,如从模型导入数据并查询所有文章,强调其在调试和测试中的作用。接着,讨论了Admin的增强,包括注册Admin配置类、显示额外字段以及添加过滤器。通过实例展示了如何在Admin界面中添加和使用这些功能,以提升管理效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Django shell

python交互式命令行程序

自动引入我们的项目环境

我们可以使用它和项目进行交互


启动django shell

pyhton manage.py shell

交互举例:

from blog.models import Article

Article.objects.all()


作用:1)调试工作  2)测试未知的方法


Admin 增强

注册Admin配置类:

class ArticleAdmin(admin.ModelAdmin)

注册:admin.site.register(models.Article,ArticleAdmin)

显示其他字段

list_diplay = ('title','content')   (就是models里的字段名)

admin.py中添加

from django.contrib import admin
from . import models

# Register your models here.
class ArticleAdmin(admin.ModelAdmin):
    list_display = ('title','content')

admin.site.register(models.Article,ArticleAdmin)

进入http://localhost:8000/admin/blog/article/


Admin过滤器

list_diplay = ('pub_time',)

tuple中只有一个成员,加逗号

在models中Article类添加发布日期

# Create your models here.
class Article(models.Model):
    title = models.CharField(max_length=32, default='title')
    content = models.TextField(null=True)
    pub_time = models.DateTimeField(null=True)

    def __unicode__(self):
        return self.title

数据移植(才可以在数据库中显示)

执行  pythonmanage.py makemigrations

再执行python manage.py migrate

生成了数据表

在http://localhost:8000/admin/blog/article/中修改时间

在admin.py中添加过滤器

class ArticleAdmin(admin.ModelAdmin):
    list_display = ('title','content','pub_time')
    list_filter = ('pub_time',)

admin.site.register(models.Article,ArticleAdmin)

进入http://localhost:8000/admin/blog/article/,可以通过右边过滤器来选择文章


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值