好奇怪的模型和表结构
来源:互联网 发布:ecshop的app源码 编辑:程序博客网 时间:2024/05/23 22:11
还有一个Extra 模型,就不截图了。
有没有发现什么不对的地方呢?
是的,表结构。
解析:
django中有关于时间的类:
from model_utils.models import TimeStampedModel
我们在创建一些model的时候,可以继承这个类,这样很方便,可以看到在数据库中对应表的结构是一张表里包含了TimeStampedModel里的创建时间字段和修改时间字段,是同一张表中的奥。
而上图,Extra 类是我手动创建的模型,在继承这个类的时候,数据库里对应的表中却是一个外键(extra_ptr_id)。
从数据库的角度考虑的话,这样有利于节省表的宽度。但这确实不是我想要的结果,因为在新增Extra和SKU的对象时,都会对Extra表新增,这样就扰乱了,在查询Extra的数据时,区分SKU的数据增加麻烦,哪里比的上直查一个表去获取一个模型对象的所有数据来的方便呢,毕竟,程序员不想办法偷懒怎么行。
所以,就不要继承这个类了,将缺少的字段都拿到SKU里吧,这样才符合逻辑。
0 0
- 好奇怪的模型和表结构
- python 的 remove 和 pop 好奇怪
- 好奇怪的现象
- 一个好奇怪的问题
- 好奇怪的新一届版主
- 好奇怪....
- 好奇怪
- 洛谷 P1747 好奇怪的游戏
- 数据库系统的模型和结构
- 数据模型和数据库系统的模型结构
- 好的存储模型
- 奇怪的Google和Gmail
- 如何使用好div盒子模型的margin和padding
- TensorFlow 训练好模型参数的保存和恢复代码
- 奇怪的 dtproperties 表
- 指针好奇怪
- 洛谷P1747 好奇怪的游戏(真的很奇怪哦~)
- unix的奇怪而又好用的命令
- Maven中常用命令简介与区别
- sicily 1544 Integer Generator
- 深入理解计算机系统-读书笔记(1)
- RMI server不能获取client对象解决
- VS2010下安装和使用boost库
- 好奇怪的模型和表结构
- HBase-scan API 通过scan读取表中数据
- 最短路系列
- 使用Swith遇到的问题
- 【译】17个提升iOS开发效率的必用工具
- JSR 303 - Bean Validation 介绍及最佳实践
- sicily 1558 He is Offside!
- android两种方式生成keystore
- JDK和JRE的区别与联系