这里定义4个模型

作者:一个作者有姓名

作者详情:包括性别,email,出生日期,

出版商:名称,地址,城市,省,国家,网站

书籍:名称,日期

分析:

作者详情和作者一对一的关系

一本书可以有多个作者,一个作者可以写多本书,作者和书籍多对多关系

一本书只由一个出版商出版,一个出版商可以出版多本书,所以出版商和是一对多

步骤:

1.编写models.py文件:

from django.db import models

# Create your models here.
class Publisher(models.Model):
name = models.CharField(max_length=30, verbose_name="名称")
address = models.CharField("地址", max_length=50)
city = models.CharField("城市", max_length=60)
state_province = models.CharField(max_length=30)
country = models.CharField(max_length=50)
website = models.URLField() class Meta:
verbose_name = '出版商'
verbose_name_plural = verbose_name def __str__(self):
return self.name class Author(models.Model):
name = models.CharField(max_length=30) class AuthorDetail(models.Model):
sex = models.BooleanField(max_length=1, choices=((0, '男'),(1, '女'),))
email = models.EmailField()
address = models.CharField(max_length=50)
birthday = models.DateField()
author = models.OneToOneField(Author) class Book(models.Model):
title = models.CharField(max_length=100)
authors = models.ManyToManyField(Author)
publisher = models.ForeignKey(Publisher)
publication_date = models.DateField()

2.生成数据库表  

  manage.py makemigrations  (创建脚本)

  manage.py migrate  (执行脚本)

  

3.在hello_django\hello\admin.py加入管理

from django.contrib import admin
from hello.models import * # Register your models here.
admin.site.register(Author)
admin.site.register(AuthorDetail)
admin.site.register(Publisher)
admin.site.register(Book)

4.在localhost:8000/admin中查看

这里表明中“出版商”为中文形式,是因为Meta起的作用,点add进去下一个页面

这里的几个中文是因为verbose_name起的作用。如果在上个页面直接点击“出版商”到展示表内容界面

这里能够显示中文是因为__str__()函数的作用

最新文章

  1. swift-字符和字符串
  2. Android_AsyncTask异步任务机制
  3. 修复 XE7 , XE8 Frame 内 PopupMenu 快捷键失效问题
  4. 测试简单for循环的效率
  5. (旧)子数涵数·Flash——影片剪辑的事件操作
  6. 如何将两个列表变成一个python字典
  7. HDU5794 A Simple Chess 容斥+lucas
  8. slf4j-simple的配置
  9. hdu 1018
  10. OpenCV学习(2)--基本数据结构
  11. 最近一段OI学习计划
  12. SpringCloud学习之eureka集群配置
  13. CoreAnimation动画结构变量
  14. Mave手动安装jar包
  15. xcode9.4 报错 error:The resource could not be loaded because the App Transport Security policy requires the use of a secure connection.
  16. Django 静态文件相关设置
  17. hdu4052矩形面积并
  18. dubbo学习(zz)
  19. java 控制流
  20. 经验分享(Android开发)

热门文章

  1. Java之Jackson框架
  2. 微信公众号 - js传入时间戳换算(以前几天、几小时...)
  3. 使用RTTI为继承体系编写”==”运算符
  4. Font Awesome入门教程
  5. cocos2d-x 3.0 场景切换特效汇总
  6. PHP面试题及答案解析(7)—Linux系统命令
  7. 【hadoop之翊】——windows 7使用eclipse下hadoop应用开发环境搭建
  8. PHP设置会话(Session)超时过期时间实现登录时间限制
  9. SVN 钩子操作-同步更新web目录
  10. 什么是CouchDB?