【问题标题】:Creating a user history API in Django在 Django 中创建用户历史 API
【发布时间】:2020-01-02 03:30:56
【问题描述】:

我是 Django 的新手,我正在使用它来构建一个服务器,人们可以在其中创建一个帐户,然后添加他们查看过的在线报纸文章。我希望用户能够查看他们查看过的所有文章,并且我希望只有该用户能够看到它。

现在数据库设计让我很困惑。 我的架构:

    User(id, username, password, email)
    Article(is, url, title, etc...)
    History(id, user_id, article_id, last_viewed)

我知道如何在 shell (History.objects.filter(User=some_user)) 中查询特定用户的历史记录,但我不知道如何为每个用户提供一个自动查询和查找其历史记录的历史记录字段。另外,我是否必须有一个存储所有不同用户历史记录的大历史记录表,或者我可以为每个用户创建一个不同的历史记录表?

我只想让每个用户都拥有他们查看过的所有文章的历史记录。

你有什么建议吗?我一直在使用美味的馅饼来创建 REST api。

【问题讨论】:

    标签: django django-models django-rest-framework tastypie


    【解决方案1】:

    您可以在 User 模型中创建一个 manytomany 字段,并在用户每次查看某篇文章时将文章的 id 添加到该字段中。

    viewed_articles = models.ManyToManyField(Article)

    是的,您绝对可以为每个用户拥有不同的历史记录。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-06
      • 2013-01-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多