Django自定义列表 models字段显示方式


Posted in Python onApril 03, 2020

Models.py中

class article(models.Model):
 id = models.AutoField(primary_key=True,verbose_name ='编号')
 title = models.CharField(max_length=100,verbose_name ='标题')
 content = models.CharField(max_length=20000,verbose_name ='正文')
 create_time = models.DateTimeField(verbose_name ='创建时间')
 change_time = models.DateTimeField(verbose_name ='修改时间')
 excerpt = models.CharField(max_length=200,blank=True,verbose_name ='摘要')

 type = models.ForeignKey(category,verbose_name ='类别')
 tags = models.ManyToManyField(tags,blank=True,verbose_name ='标签')

 class Meta:
  verbose_name = '文章列表'
  verbose_name_plural = '文章列表'

 def __str__(self):
  return self.title

我们可以在这基础上改进,添加其它字段,从而改变django后台admin 数据库列表字段的显示。 这个页面应该提供便利,比如说:在这个列表中可以看到编号,标题,发布时间。如果能按照编号,发布时间来排序,那就更好了。

为了达到这个目的,我们将为articel模块定义一个ModelAdmin类。 这个类是自定义管理工具的关键,其中最基本的一件事情是允许你指定列表中的字段。 打开admin.py并修改:

from django.contrib import admin
from .models import category,tags,article

# Register your models here.

class articleAdmin(admin.ModelAdmin):
 list_display = ('id','title','create_time','change_time','type') #添加字段显示
 search_fields = ('title','create_time') #添加快速查询栏

admin.site.register(category)
admin.site.register(tags)
admin.site.register(article,articleAdmin)

补充知识:Django----将列表按照一定的顺序展示

1、要求:按照文章的时间降序排列,并且只展示前5篇文章

2、需要用到:list的切片知识

###改造view.py中的视图方法

#列表页
def get_article(request):
 article_list = Article.objects.all();
 #按照文章时间排序(并且是降序排列)
 order_3_list=Article.objects.order_by('-articel_date')[:3]------------->使用order_by('字段名称'),order_by('-字段名称')【前面加一个减号,表示降序】
 page=request.GET.get('page');
 if page:
  page=int(page);

 else:
  page=1;
 print('PAGE 参数为:',page);

 #实例化一个分页组件,第一个参数是需要被分页的列表,第二个参数是每一个的item个数
 paginator=Paginator(article_list,2);
 #page方法,传入一个参数,表示第几页的列表,这边传入的page,是你在地址中写的参数
 page_article_list=paginator.page(page);
 page_num=paginator.num_pages
 print('page_num:',page_num);
 #判断是否存在下一页
 if page_article_list.has_next():
  next_page=page+1;

 else:
  next_page=page;
 if page_article_list.has_previous():
  previous_page=page-1;
 else:
  previous_page=page;

 return render(request,'index.html',{
  'article_list':page_article_list,
  "order_3_list":order_3_list,--------------->把这个东西传回前端
  'page_num':range(1,page_num+1),
  'curr_page':page,
  'next_page':next_page,
  'previous_page':previous_page
 })

#前端改造

 <div class="col-md-3" role="complementary">
  <div><h2>持续更新中......</h2>
   {% for article in order_3_list %}

   <h4><a href="get_detail/{{ article.article_id }}" rel="external nofollow" >{{article.article_title}}</a></h4>
   {% endfor %}

  </div>

查看结果,调试正常,加油?(^ω^)?

以上这篇Django自定义列表 models字段显示方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python XML RPC服务器端和客户端实例
Nov 22 Python
使用Python写个小监控
Jan 27 Python
python3使用scrapy生成csv文件代码示例
Dec 28 Python
python中copy()与deepcopy()的区别小结
Aug 03 Python
Python实现的连接mssql数据库操作示例
Aug 17 Python
django配置连接数据库及原生sql语句的使用方法
Mar 03 Python
深入解析python中的实例方法、类方法和静态方法
Mar 11 Python
Django视图扩展类知识点详解
Oct 25 Python
python实现修改固定模式的字符串内容操作示例
Dec 30 Python
Python编程快速上手——Excel到CSV的转换程序案例分析
Feb 28 Python
Python字符串三种格式化输出
Sep 17 Python
python3.9.1环境安装的方法(图文)
Feb 02 Python
使用Django清空数据库并重新生成
Apr 03 #Python
Python基础类继承重写实现原理解析
Apr 03 #Python
Django实现列表页商品数据返回教程
Apr 03 #Python
Python第三方库的几种安装方式(小结)
Apr 03 #Python
在PyTorch中使用标签平滑正则化的问题
Apr 03 #Python
pip install 使用国内镜像的方法示例
Apr 03 #Python
pycharm解决关闭flask后依旧可以访问服务的问题
Apr 03 #Python
You might like
ThinkPHP快速入门实例教程之数据分页
2014/07/01 PHP
PHP中的插件机制原理和实例
2014/07/08 PHP
php字符串过滤与替换小结
2015/01/26 PHP
在CentOS上搭建LAMP+vsftpd环境的简单指南
2015/08/01 PHP
php封装的pdo数据库操作工具类与用法示例
2019/05/08 PHP
JQuery 初体验(建议学习jquery)
2009/04/25 Javascript
JavaScript DOM学习第六章 表单实例
2010/02/19 Javascript
JQuery扩展插件Validate 3通过参数设置错误信息
2011/09/05 Javascript
javascript禁用Tab键脚本实例
2013/11/22 Javascript
Nodejs中读取中文文件编码问题、发送邮件和定时任务实例
2015/01/01 NodeJs
jquery实现不包含当前项的选择器实例
2015/06/25 Javascript
jQuery实现仿百度帖吧头部固定导航效果
2015/08/07 Javascript
javascript实现密码验证
2015/11/10 Javascript
JS数组合并push与concat区别分析
2015/12/17 Javascript
AngularJS基础 ng-csp 指令详解
2016/08/01 Javascript
前端js弹出框组件使用方法
2020/08/24 Javascript
详解使用webpack构建多页面应用
2017/12/21 Javascript
javaScript代码飘红报错看不懂?读完这篇文章再试试
2020/08/19 Javascript
python装饰器使用方法实例
2013/11/21 Python
Python常用库大全及简要说明
2020/01/17 Python
python线程join方法原理解析
2020/02/11 Python
Python 解决火狐浏览器不弹出下载框直接下载的问题
2020/03/09 Python
Django+Celery实现动态配置定时任务的方法示例
2020/05/26 Python
树莓派升级python的具体步骤
2020/07/05 Python
Python爬虫实例——scrapy框架爬取拉勾网招聘信息
2020/07/14 Python
全网最全python库selenium自动化使用详细教程
2021/01/12 Python
使用css3背景渐变中的透明度来设置不同颜色的背景渐变
2014/03/31 HTML / CSS
canvas学习笔记之绘制简单路径
2019/01/28 HTML / CSS
Fresh馥蕾诗英国官网:法国LVMH集团旗下高端天然护肤品牌
2018/11/01 全球购物
财务支持类个人的自我评价
2014/02/14 职场文书
机关节能减排实施方案
2014/03/17 职场文书
大学生心理活动总结
2014/07/04 职场文书
2015年安全生产目标责任书
2015/01/29 职场文书
求职自荐信范文(优秀篇)
2015/03/27 职场文书
基于Go语言构建RESTful API服务
2021/07/25 Golang
python绘制简单直方图(质量分布图)的方法
2022/04/21 Python