Django之模型注册
接着上一篇:Django之创建项目
目的:一个空项目创建好了,我们在models.py中新增3张表并在admin界面中显示,并能操作它们。
示例models
编辑models.py
# -*- coding:utf-8 -*-
from __future__ import unicode_literals from django.db import models # Create your models here.
class Blog(models.Model):
name = models.CharField(max_length=100,verbose_name=u"博文名称")
tagline = models.TextField(verbose_name=u"标注") def __unicode__(self):
return self.name class Meta:
verbose_name = "博客主题"
verbose_name_plural = "博客主题" class Author(models.Model):
name = models.CharField(max_length=50,verbose_name=u"姓名")
email = models.EmailField(verbose_name=u"邮箱") class Meta:
verbose_name = "作者"
verbose_name_plural = "作者" class Entry(models.Model):
blog = models.ForeignKey(Blog)
headling = models.CharField(max_length=255,verbose_name=u"标头")
body_text = models.TextField(verbose_name=u"博体")
pub_date = models.DateField(verbose_name=u"发布日期")
mod_date = models.DateField(verbose_name=u"修改日期")
authors = models.ManyToManyField(Author)
n_comments = models.IntegerField(verbose_name=u"备注")
n_pingbacks = models.IntegerField()
rating = models.IntegerField() def __unicode__(self):
return self.headling class Meta:
verbose_name = "博文"
verbose_name_plural = "博文"
模型注册到admin
from django.contrib import admin # Register your models here.
from sqlOper import models class AuthorAdmin(admin.ModelAdmin):
list_display = ('name','email') class BlogAdmin(admin.ModelAdmin):
list_display = ('name','tagline') class EntryAdmin(admin.ModelAdmin):
list_display = ('headling','pub_date','mod_date','n_comments') # admin.site.register([models.Blog,models.Author,models.Entry])
admin.site.register(models.Blog,BlogAdmin)
admin.site.register(models.Author,AuthorAdmin)
admin.site.register(models.Entry,EntryAdmin)
将表实例化到数据库
>python manage.py makemigrations
Migrations for 'sqlOper':
sqlOper\migrations\0001_initial.py:
- Create model Author
- Create model Blog
- Create model Entry >python manage.py migrate
Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions, sqlOper
Running migrations:
Applying sqlOper.0001_initial... OK
创建超级用户
D:\py\python\spiders\django\djangoStudy>python manage.py createsuperuser
Username (leave blank to use 'administrator'): admin
Email address: 2905@qq.com
Password:
Password (again):
Superuser created successfully.
登陆界面,输入超级用户名/密码

现在可以对你的表进行操作了,添加一些作者、博客,内容信息吧。
关于中文的问题
1、django-admin界面显示中文
修改settings.py
LANGUAGE_CODE = 'zh_Hans'
TIME_ZONE = 'Asia/Shanghai'
最新的django版本(1.9)中只有zh_Hans,可以将其复制为zh_CN
2、admin中新建表显示中文
使用django中的原类Meta
选项参考:http://kaozjlin.iteye.com/blog/1662617
Django之模型注册的更多相关文章
- Django:将模型注册到后台的几种方法
from django.contrib import admin from .models import * #将模型注册到后台: #方法一:将模型直接注册到后台 # admin.site.regis ...
- python 全栈开发,Day70(模板自定义标签和过滤器,模板继承 (extend),Django的模型层-ORM简介)
昨日内容回顾 视图函数: request对象 request.path 请求路径 request.GET GET请求数据 QueryDict {} request.POST POST请求数据 Quer ...
- 四、Django之模型与管理后台-Part 2
一.数据库安装 打开mysite/settings.py配置文件,这是整个Django项目的设置中心.Django默认使用SQLite数据库,因为Python源生支持SQLite数据库,所以你无须安装 ...
- django中介模型,CBV模型,及logging日志配制
1.中介模型 中介模型,这个是在我们创建表格时,多对多添加的时候应用到的,通过制定ManyToManyField字段中的through参数来定义,为两者的关系新建一个中介class 为什么会产生这个中 ...
- Django基础(2)--模板自定义标签和过滤器,模板继承 (extend),Django的模型层-ORM简介
没整理完 昨日回顾: 视图函数: request对象 request.path 请求路径 request.GET GET请求数据 QueryDict {} request.POST POST请求数据 ...
- Django的模型与字段
Django的模型,包含字段field和操作方法,每个模型在数据库中映射为一张表. 基本原则: 每个model在django中是一个Python类 每个model都是django.db.models. ...
- Django——6 模型基础ORM 数据库连接配置 模型的创建与映射 数据的增删改查
Django Django的ORM简介 数据库连接配置 模型的创建与映射 数据库的增删改查 增数据 查数据及补充 改数据 删数据 Django的ORM系统分析 ORM概念:对象关系映射(Objec ...
- Django入门--模型系统(一):模型基础
1.Django的ORM介绍 对象关系映射(英语:(Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不 ...
- django项目模型字段
一个模型(model)就是一个单独的.确定的数据的信息源,包含了数据的字段和操作方法.通常,每个模型映射为一张数据库中的表. 基本的原则如下: 每个模型在Django中的存在形式为一个Python类 ...
随机推荐
- CSS3中的pointer-events
今天做项目中偶然误把元素加上了pointer-events属性,结果导致后来在js中给该元素加点击事件不能用,检查了半天才发现是这个属性的问题.之前没有好好研究,于是决定仔细研究一下. 一.定义及语法 ...
- CSS学习笔记(基础篇)
CSS概念 CSS 指层叠样式表 (Cascading Style Sheets)(级联样式表) Css是用来美化html标签的,相当于页面化妆. 样式表书写位置: <head> < ...
- 机器学习--降维算法:PCA主成分分析
引言 当面对的数据被抽象为一组向量,那么有必要研究一些向量的数学性质.而这些数学性质将成为PCA的理论基础. 理论描述 向量运算即:内积.首先,定义两个维数相同的向量的内积为: (a1,a2,⋯,an ...
- 深入理解Java虚拟机:虚拟机类加载机制
目录 7.1 概述 7.2 类加载的时机 类的生命周期 5种情况需要"初始化" 7.3 类加载的过程 1.加载 2.验证 3.准备 4.解析 5.初始化 7.4 类加载器 类与类加 ...
- PL/SOL csv格式导出查询结果时出现某些列的数据被四舍五入了的解决办法
昨天用pl/sql从oracle数据库捞取数据时,发现导出的csv格式中某些列的数据被进行了四舍五入处理了,当然这些列都是纯数字的,百思不得其解,后来上网才,才得知了原因. 这并不是导出的CSV文件数 ...
- JAVA项目将 Oracle 转 MySQL 数据库转换(Hibernate 持久层)
项目开发时用的是Oracle数据库,但为了更好的做分布式,做集群,我们要将数据库转成 MySQL! 在数据库迁移中首先要做的事是将 Oracle 的表结构以及数据 克隆到 MySQL 数据库. 这点不 ...
- Kaggle(一):房价预测
Kaggle(一) 房价预测 (随机森林.岭回归.集成学习) 项目介绍:通过79个解释变量描述爱荷华州艾姆斯的住宅的各个方面,然后通过这些变量训练模型, 来预测房价. kaggle项目链接:ht ...
- 跟大佬一起读源码:CurrentHashMap的扩容机制
并发编程——ConcurrentHashMap#transfer() 扩容逐行分析 前言 ConcurrentHashMap 是并发中的重中之重,也是最常用的数据结构,之前的文章中,我们介绍了 put ...
- Centos系统下卸载、安装MySQL及用户的创建、授权和使用(详细。。。。)
由于经常使用linux系统,并且大数据环境搭建中经常会使用到mysql,不像windows系统下的安装,今天有点空写一篇,下面我给大家演示一遍. 主要有三部分内容: 1.MySQL的卸载 2.MySQ ...
- HDU 2588 GCD------欧拉函数变形
GCD Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...