django 如何写model

本文探讨了数据库设计中角色与表间的关系抽象,通过实例展示了如何建立人与帖子、评论的关联,包括1对n、1对1和n对1的关系,并明确了主表和外键、多对一和多对多的关系。分析了不同角色在逻辑上的重要性,确定了表间关系及字段类型。
摘要由CSDN通过智能技术生成
  1. 根据需求功能抽象角色
    1. 比如贴吧
  2. 根据角色定表间关系:方法
    1. 双向找关系
    2. 合并关系
      例子:
          人发帖
          角色:        人  帖子
          关系:        
                       人————>帖子   :  1————>n     (一个人可以发多个帖子)
      
                       人<————帖子   :   1<————1     (一个帖子属于一个人)
      
      
          合并关系:                     1<————n       (帖子为主表,所以为多对1) ForeignKey
      
      
      例二:
          人回帖(人对帖子发评论)
          角色:人    帖子   评论 
          关系:
              人————>帖子     :   1————>n     (一个人可以发多个帖子)
              人<————帖子     :    1<————1     (一个帖子属于一个人)
      
          合并关系:               1<————n     (帖子为主表,所以为多对1) ForeignKey(user)
      
      
              人————>评论     :   1————>n     (一个人可以发多个评论)
              人<————评论     :    1<————1     (一个评论只能是一个人发的)
      
          合并关系:               1<————n     (评论为主表,所以为多对1) ForeignKey(user)
      
      
              帖子————>评论   :   1————>n     (一个帖子可以有多个评论)
              帖子<————评论   :    1<————1     (一个评论只能属于一个帖子)
      
          合并关系:               1————>n     (帖子为主表,所以为多对1) ManyToMany(comment)
      
  3. 分析主表(根据逻辑,谁相对重要,谁就是主表),见上面:

  • 表间关系及字段

    • 1对n    ForeignKey

    • 1对1   OneToOneField

    • n对1   ForeignKey

    • n对n  ManyToManyField

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值