【问题标题】:Implement a feed stream in Django在 Django 中实现提要流
【发布时间】:2011-07-21 19:26:56
【问题描述】:

我有一个使用 Product 模型和 Comment 模型的 Django 应用程序。

  • User 可以将Product 添加到其喜爱的产品列表中。

  • User 可以将Comment 留给Product

我会在我的应用程序的主页中实现一个新闻提要,例如 Facebook 新闻提要。

类似这样的:

  • user_1 只是 cmets product_3:“这很漂亮!”
  • user_1 刚刚将 product_3 添加到其列表中
  • user_4 刚刚将 product_2 添加到其列表中
  • user_4 刚刚将 product_3 添加到其列表中
  • user_2 只是 cmets product_1:“推荐!”
  • user_4 刚刚添加了 product_1

所以它是一个包含各种类型句子的提要。

你有想法以一种好的方式实现类似的东西吗?

【问题讨论】:

    标签: python django django-models


    【解决方案1】:
    1. Django ORM 支持多态关联。您可以拥有像“Event”这样的“基础”实体和像“UserEvent”、“ProductEvent”等具体事件。这很容易。看这里:https://docs.djangoproject.com/en/dev/topics/db/models/ 搜索“模型继承”
    2. 查看内容类型:http://docs.djangoproject.com/en/dev/ref/contrib/contenttypes/
    3. 您可能只需将“渲染”文本保存到数据库即可。

    【讨论】:

      【解决方案2】:

      我建议创建一个新模型(假设是 UserActions),在该模型中,您将通过在每个其他模型“保存”操作上添加一个项目来跟踪所有所需的操作。 然后,您可以轻松地为此模型构建视图并生成按时间顺序包含所有操作的提要。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-12-30
        • 1970-01-01
        • 2020-05-18
        • 1970-01-01
        • 2018-03-07
        • 2019-04-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多