【问题标题】:How to design a recommendation page如何设计推荐页面
【发布时间】:2011-01-10 21:09:59
【问题描述】:

我有一个允许用户听音乐的应用程序。每个艺术家都为他/她自己设置了特定的流派。歌曲没有流派。

我需要一个基于用户不时观看的歌曲类型的推荐页面。

考虑这个例子。

我有: 用户乔 艺术家本。具有流派声学。有1首歌曲。 艺术家亚历克斯。有流派爵士乐,有 1 首歌曲。 艺术家汉娜。具有流派声学。有 1 首歌曲。

用户 Joe 听了 Alex 的歌两次,听了 Ben 的歌 3 次。在推荐页面中,它应该显示 Ben 和 Hannah。因为乔更喜欢听声学媒体。

我应该如何设计这个?我应该有一个表格来跟踪这些数据吗?如果有,应该存在哪些列?

或者,我应该在加载推荐页面时进行某种聚合吗?

【问题讨论】:

    标签: ruby-on-rails postgresql


    【解决方案1】:

    您需要一个 has_many 通过歌曲和用户之间的连接。除了 user_id 和 song_id 之外,此连接还有一个收听计数器。然后你可以找到和单个用户听过相同歌曲的用户,返回这些用户听过最多的歌曲,并按流派优先排序的用户排序。

    【讨论】:

      猜你喜欢
      • 2018-10-23
      • 2017-12-18
      • 1970-01-01
      • 1970-01-01
      • 2014-07-21
      • 2018-12-27
      • 1970-01-01
      • 1970-01-01
      • 2012-05-03
      相关资源
      最近更新 更多