【问题标题】:Django model design basicsDjango 模型设计基础
【发布时间】:2014-02-11 06:59:55
【问题描述】:

我有两个模型 status_message,comment 每个都有一个 id,text(和一些额外的字段)每个状态可以有很多 cmets 我还需要一个名为 likes 的模型。 status_message 和 comment 可以有很多点赞。点赞的正确模型应该是什么?

1) 一个“类型”字段,用于查找喜欢是用于状态消息还是评论,以及公共字段“postid”用于状态消息的 id,评论

2) 单独的 status_message_id、comment_id 和每个都有 null 选项 true

我的要求包括 - 找出 status_message,用他们的点赞数评论详细信息。正确的设计应该是什么?

【问题讨论】:

    标签: django model


    【解决方案1】:

    如果我理解得很好,每个“状态”可以有“cmets”,每个“评论”可以有“赞”。

    那么,你为什么不做你在状态和评论之间做同样的事情呢?

    我的意思是在评论中使用 ForeignKey 引用状态,在 like 中使用 ForeignKey 引用评论。

    这样,您可以获得特定状态的所有评论以及所有喜欢。

    例子:

    status:
      id
      text
    comment:
      id
      text
      statusId (foreignKey ref status.id)
    likes:
      id
      commentId (foreignKey ref comment.id can be null)
      statusId (foreignKey ref status.id can be null) 
    

    我喜欢 django,它是解决方案

    【讨论】:

    • 状态和评论都可以点赞
    猜你喜欢
    • 2013-10-21
    • 2019-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-21
    • 2014-06-09
    • 2015-10-17
    相关资源
    最近更新 更多