Не удается вставить в таблицу с RLS, несмотря на то, что вы вошли в систему?

#supabase

#супабаза

Вопрос:

Я хочу добавить строку в profiles таблицу в общедоступной схеме сразу же после того, как пользователь зарегистрировался и его аутентифицированный пользователь был создан в базе данных.

Пользователь успешно создается, и я могу видеть сведения о пользователе в возвращаемом user объекте с помощью функции supabase.auth.signUp.

Однако, когда я пытаюсь выполнить ручную вставку в таблицу, я получаю сообщение об ошибке, в котором говорится, что RLS в таблице нарушается. Однако пользователь вошел в систему, и uid указан правильно, так почему же он не позволяет мне вставлять данные?

 async function handleSubmit(e: any) {  e.preventDefault()   const email = emailRef.current.value;  const password = passwordRef.current.value;   // const navigate = useNavigate();   const {user, error} = await signUp({email, password});   if(error){  alert("Error signing in");  } else {  await addUserDetails({  uuid: user.id,   firstName: firstNameRef.current.value,   lastName: lastNameRef.current.value  });  navigate("/dashboard");  }  }   return //rest of component   }   export async function addUserDetails({  uuid, firstName, lastName }){  const {data, error } = await supabase.from("profiles").insert([{  id: uuid,  first_name: firstName,  last_name: lastName  }]) }  RLS on table create policy "Users can insert their own profile."  on profiles for insert  with check ( auth.uid() = id );  

Комментарии:

1. Может быть, потому, что пользователь не подтвердил свою электронную почту?