我在Node中间件中使用Supabase。我正在开发一个invite函数,它通过REST端点接收现有supabase用户的eMail地址。现在,它应该查询users表,以获得用户ID。
(我正在使用Supabase JavaScript库,这是一个绕过行级安全性的管理键):
const { createClient, } = require('@supabase/supabase-js')
const supabase = createClient(process.env.SUPABASE_URL, process.env.SUPABASE_KEY)
supabase
.from('users')
.select('id')
.eq('email', 'doe@example.com')
.then(response => {
console.log(response)
})我得到了一个错误:
“关系”"public.users“不存在
我还尝试了一个查询
supabase
.from('users')
.select('id')
.eq('email', 'doe@example.com')
.then(response => {
console.log(response)
})但这也失败了。似乎不可能查询users表。
我做错了什么?如何通过给定的eMail查询用户ID?
匿名者能把我推向正确的方向吗?
谢谢,
尼科
发布于 2021-07-11 09:06:31
我自己找到了解决办法:
不能直接查询auth.users表。相反,您必须创建一个副本(例如public.users或public.profile等)。使用您以后要使用的数据。
一旦创建了用户,您就可以使用用户触发器自动创建public.users表的条目。
我在博客文章中写下了一些代码示例和细节:Supabase:如何查询用户表?
https://stackoverflow.com/questions/68334303
复制相似问题