Videos na nuvem | atualização de desing (Appbar) | mudança no quiz
This commit is contained in:
@@ -47,7 +47,23 @@ class _SettingsBodyState extends State<SettingsBody> {
|
||||
setState(() => _deletingAccount = true);
|
||||
try {
|
||||
await supabase.from('children').delete().eq('owner_id', uid);
|
||||
await supabase.from('profiles').delete().eq('id', uid);
|
||||
|
||||
// O Supabase não avisa quando uma política de RLS bloqueia silenciosamente
|
||||
// uma operação: sem `.select()` para devolver as linhas apagadas não há
|
||||
// como distinguir "0 linhas existiam" de "sem permissão para apagar".
|
||||
final deletedProfile = await supabase
|
||||
.from('profiles')
|
||||
.delete()
|
||||
.eq('id', uid)
|
||||
.select('id');
|
||||
|
||||
if (deletedProfile.isEmpty) {
|
||||
throw StateError(
|
||||
'A base de dados recusou apagar o perfil (sem política de RLS '
|
||||
'para DELETE). Os dados não foram removidos.',
|
||||
);
|
||||
}
|
||||
|
||||
await supabase.auth.signOut();
|
||||
if (!mounted) return;
|
||||
Navigator.of(context).popUntil((route) => route.isFirst);
|
||||
|
||||
Reference in New Issue
Block a user