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来进行查询,我希望在管理员可以编辑/更新的表中显示此信息。基本上,管理员应该能够将用户添加到项目中,我只是不完全确定如何在前端显示数据-当管理员转到特定项目页面时,他们应该能够添加该特定项目中不存在的用户。例如,如果我要显示project
Falcon
,管理员应该能够分配
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)