老师,想问一下数据库设计时候的外键及索引

来源:3-4 trade交易的model设计

隐逆

2017-09-13

通过看PHP语言所编写的ECSHOP商城系统,发现他们的数据表基本没有使用外键,而是使用索引在应用层将各个表之间操作,请问外键的使用是否是非必须的?并且看了一些知乎回答,似乎对于商城系这类交易系统都不建议使用外键,而是使用中间层关联表。或许以上言论有部分表述不清及不对,还请各位指点我的想法。

写回答

1回答

bobby

2017-09-14

不使用外键也是可以的, 但是中间层关联表不一定非要使用, 一般都是通过id做关联 只是在数据库中不指名这是一个外键而已, 而且django的model中即使不适用外键 也能当外键使用 可以这样 goods = models.ForeignKey(Category, to_field="cat_id", related_name="cat") 一般用中间层表是manytomany这种才需要使用到中间层表, 否则一般使用外键关联字段就行了, 这里的不适用外键一般指的是不在表设计的时候指名该字段是外键, 而是直接一个id字段而已

0
3
隐逆
非常感谢老师的回答
2017-09-15
共3条回复

Python前后端分离开发Vue+Django REST framework实战

Django REST framework课程视频,RESTFul API前后端分离开发

2873 学习 · 2457 问题

查看课程