- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
对于我正在处理的网站,我希望用户能够勾选代表他/她可能感兴趣的事物的多个框,类似于 StumbleUpon。用户将选中“网页开发”和“网页设计”,然后单击“提交”,然后会将他的偏好存储在数据库中。
以后,如果有人创建了一个项目,并标记了他选择的其中一项首选项,则该用户将获得更新。因此,如果我创建了一个名为“构建网站”的新项目并选中了“网络开发”类别,所有在个人资料中选择了“网络开发”的用户都会收到某种消息或电子邮件,提醒他们新创建的项目主题。
以 MySQL 格式实现此功能的最佳方法是什么?我查看了一些关于管理分层数据的页面(会有通用类别,如“计算机”或“音乐”,管理员将能够添加/删除/编辑类别),但似乎没有一种方法是我需要的 -至少,不是以我陷入的思维方式。也许有一个我一直忽略的更简单的答案?
最佳答案
创建一个包含各种兴趣的表格。说
Interests :- id, interest
然后是一个表,其中存储了用户选择的所有兴趣作为
UserInterests :- user_id, interest_id
和项目利益关系为
ProjectInterest :- project_id, interest_id
现在,当添加一个新项目时,您可以运行类似于以下的查询,让用户了解该项目是否感兴趣
SELECT DISTINCT user_id
FROM UserInterests ui, ProjectInterests pi
WHERE ui.interest_id = pi.interest_id AND pi.project_id = <new project id>
或者,使用显式连接语法:
SELECT DISTINCT user_id
FROM UserInterests ui
INNER JOIN ProjectInterests pi ON ui.interest_id = pi.interest_id
WHERE pi.project_id = <new project id>
关于php - 如何为用户感兴趣的主题列表创建数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8040504/
我正在尝试检索用户兴趣列表。所以我正在调用 graph api 来检索书籍、音乐等内容。似乎“喜欢”下的所有内容也包括书籍、音乐等下列出的所有内容。他们有任何异常(exception)吗,或者我可以调
这是一道代码组织题。我有将渐变背景放在 View 上的代码。我想在多个 View 上使用相同的代码 - 因此,我想将代码放在一个函数中,并在配置相关 View 时调用它。 我的问题是,放置这样一个函数
我是一名优秀的程序员,十分优秀!