Django学习(九)---Templates过滤器及Django shell和Admin增强
一、Templates过滤器
过滤器属于django模板语言
修改模板中的变量,从而显示不同内容
{{ value | filter }}
举例:{{ list_nums | length}} 表示list的长度
{{ value | filter | filter | filter }} 可叠加
django模板如果出现了不存在的变量,不会报错,只会给出空值
因此修改add_article.html 去掉{{% if *** %}} 添加过滤器default
<!DOCTYPE html>
<html>
<head>
<title>增加新文章</title>
</head>
<body>
<form action="{% url 'blog:sub_article' %}" method="post">
{% csrf_token %}
<input type='hidden' name='article_id' value="{{ article.id | default:'0' }}">
文章标题<input type="text" name='title' value='{{ article.title }}'/>
<br>
文章内容<input type="text" name='content' value='{{ article.content }}'/>
<br>
<input type="submit" value="提交">
</form>
</body>
</html>
二、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)
Admin过滤器
list_diplay = ('pub_time',)
注意tuple中只有一个成员,要加逗号
在models。py中Article类添加发布日期
from django.db import models
# 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(auto_now=True)
def __str__(self):
return self.title
数据移植(才可以在数据库中显示)
执行 python manage.py makemigrations
再执行 python manage.py migrate
生成了数据表
在admin.py中添加过滤器:
from django.contrib import admin
from . import models
# Register your models here.
class ArticleAdmin(admin.ModelAdmin):
list_display = ('title','content','pub_time')
list_filter = ('pub_time',)
admin.site.register(models.Article,ArticleAdmin)
Django学习(九)---Templates过滤器及Django shell和Admin增强的更多相关文章
- Python Django 学习 (二) 【Django 模型】
注: 由于自己排版确实很难看,本文开始使用markdown编辑,希望有所改善 官方定义 A model is the single, definitive source of information ...
- Django学习笔记(4)——Django连接数据库
前言 在MVC或者MTV设计模式中,模型(M)代表对数据库的操作.那么如何操作数据库呢?本小节就认真学习一下.首先复习一下Django的整个实现流程 ,然后再实现一下使用数据库的整个流程,最后学习一下 ...
- python Django 学习笔记(五)—— Django admin自动管理界面
1,激活管理界面 修改settings.py MIDDLEWARE_CLASSES = ( 'django.middleware.common.CommonMiddleware', 'django.c ...
- Django学习笔记(13)——Django的用户认证(Auth)组件,视图层和QuerySet API
用户认证组件的学习 用户认证是通过取表单数据根数据库对应表存储的值做比对,比对成功就返回一个页面,不成功就重定向到登录页面.我们自己写的话当然也是可以的,只不过多写了几个视图,冗余代码多,当然我们也可 ...
- python Django 学习笔记(一)—— Django安装
注:本人python版本2.7.5 ,win7系统 安装Django https://www.djangoproject.com/download/ 官方下载Django-1.5.5.tar.gz 1 ...
- Django学习笔记(一)Django基础
新建项目 django-admin startproject my_site #会在当前目录新建my_site目录,可自行修改目录名 django-admin startproject my_site ...
- Django学习笔记(二)——django数据库的使用
1.模型——SQLite3数据库使用 使用django的数据库必须创建一个app python manage.py startapp check 创建app 此时manage.py的目录下会多一个c ...
- Python Django 学习 (一) 【Django 框架初探】
1. 简介: Python下有许多款不同的 Web 框架.Django是重量级选手中最有代表性的一位.2008年9月发布第一个版本,目前的Django版本应该是2.1. 2. 本文的环境 OS : W ...
- 【Python】Django学习一:第一个Django程序
项目开发环境 Python 3.6 Django 1.11.5 Django安装 在开始安装Django之前,Django更新比较频繁,所以要选择合适的版本,这里选择Django1.11.5. pip ...
随机推荐
- CentOS 虚拟机安装详解
第一步:安装 VMware 官方网站:www.vmware.com 下载百度云链接:http://pan.baidu.com/s/1bphDOWv 密码:0zix VMware 是一个虚拟 PC 的软 ...
- JVM-7.Java内存模型与高效并发
更多内容参见<并发与同步>系列 一.引子 二.JMM 三.Java中的线程 四.线程安全 五.锁优化 一.引子 运算能力 摩尔定律:晶体管数量,代表的CPU的频率 Amdahl ...
- Top 10 JavaScript编辑器,你在用哪个?
对于JavaScript程序员来说,目前有很多很棒的工具可供选择.文本将会讨论10个优秀的支持JavaScript,HTML5和CSS开发,并且可以使用Markdown进行文档编写的文本编辑器.为什么 ...
- oracle日志挖掘
oracle日志挖掘是一种十分强大的数据恢复技术,只要你保障你的归档日志和重做日志是完整的,那么就可以将你的数据恢复到任何时刻.简单叙述一下日志挖掘的基本原理,然后进行一个简单的小实验. 日志挖掘时基 ...
- 提高java编程质量 - (二)取余用偶判断,不要用奇判断
取余判断原则:取余用偶判断,不要用奇判断 先看一个 程序: package com.test; import java.util.Scanner; public class t1 { public s ...
- JDBC复习
-----------------------------------------JDBC复习----------------------------------------- 1.JDBC (Jav ...
- javascript的setTimeout()与setTimeout()方法用法总结
setTimeout与setInterval的区别: setTimeout 定义和用法: setTimeout()方法用于在指定的毫秒数后调用函数或计算表达式. 语法: setTimeout(code ...
- Java基本之数据类型
一.创建一个简单的Java应用程序 public class Code { public static void main(String[]args) { System.out.println(&qu ...
- 【PHP】最详细PHP从入门到精通(三)——PHP中的数组常用函数汇总
PHP从入门到精通 之PHP中的数组常用函数详解 数组作为PHP中最常用的结构之一,PHP强大的数组函数功能,给数组的相关操作带来了极大的便利.今天给大家介绍的PHP中数组函数,是PHP数组中重要的 ...
- DB2简介和安装部署
一.DB2相关概念 1.DB2体系结构: DB2体系结构中的最高一层是系统,一个系统表示DB2的一个安装.在由很多机器组成 的网络环境中,我们有时=也称系统为数据库分区,一个系统可以包含多个DB2实例 ...