Postgresql 将用户添加到他们不需要的项目中';你不属于谁?Postgres/Vue JS
我有三张桌子 用户:Postgresql 将用户添加到他们不需要的项目中';你不属于谁?Postgres/Vue JS,postgresql,vue.js,Postgresql,Vue.js,我有三张桌子 用户: id email 1 greg@yahoo.com 2 erik@gmail.com 3 joey@friends.com 4 omar@thewire.com 项目: id name 1 Falcon 2 Dragon 3 Phoenix 和UserProjects(用于查看哪个用户属于哪个项目的连接表): 我已经为我的前端设置了
id email
1 greg@yahoo.com
2 erik@gmail.com
3 joey@friends.com
4 omar@thewire.com
项目:
id name
1 Falcon
2 Dragon
3 Phoenix
和UserProjects(用于查看哪个用户属于哪个项目的连接表):
我已经为我的前端设置了一个RESTAPI来进行查询,我希望在管理员可以编辑/更新的表中显示此信息。基本上,管理员应该能够将用户添加到项目中,我只是不完全确定如何在前端显示数据-当管理员转到特定项目页面时,他们应该能够添加该特定项目中不存在的用户。例如,如果我要显示projectFalcon
,管理员应该能够分配joey@friends.com
和omar@thewire.com
因为它们不属于该项目
这可能不是一种理想的做事方式,如果不是的话——你们会建议我如何构建它?这是我的DB应该处理的工作,还是我应该在前端过滤掉它?对于类似的事情,您通常会在前端过滤您的列表。
这样,您就不需要在后端添加API调用,而且更简单/更快 谢谢你的提示。在对前端的
.filter
和后端的一些查询进行了一些研究之后,我得出结论,这将更易于维护:
SELECT id, email
FROM "user"
WHERE id NOT IN (SELECT user_id FROM userprojects WHERE project_id = 1)
我将用我需要查询的任何项目id替换project\u id=1
如果这被认为是一个错误的查询,请告诉我
SELECT id, email
FROM "user"
WHERE id NOT IN (SELECT user_id FROM userprojects WHERE project_id = 1)