4.1 KiB
4.1 KiB
📸 Como Criar o Bucket 'catalogo' - Passo a Passo
❌ Problema
Ao tentar adicionar fotos em Site / Catalogo, aparece erro porque o bucket catalogo não existe.
✅ Solução Rápida (5 minutos)
🎯 Opção 1: Via Interface (Mais Fácil)
-
Acesse o Supabase Dashboard
- URL: https://supabase.com/dashboard
- Faça login com sua conta
-
Selecione seu Projeto
- Clique no projeto "Liberi Kids" (ou o nome que você deu)
-
Vá para Storage
- No menu lateral esquerdo, clique em "Storage"
- Clique no botão "Create a new bucket" (ou "New bucket")
-
Configure o Bucket
- Name:
catalogo(exatamente assim, minúsculo) - Public bucket: ✅ MARQUE ESTA OPÇÃO (muito importante!)
- File size limit:
5MB - Allowed MIME types: (deixe vazio ou adicione):
image/jpegimage/jpgimage/pngimage/webpimage/gif
- Name:
-
Criar o Bucket
- Clique em "Create bucket"
- Aguarde a confirmação
-
Configurar Políticas de Segurança (IMPORTANTE!)
- Vá em SQL Editor (menu lateral)
- Clique em "New Query"
- Cole o código abaixo:
-- Política de leitura pública
CREATE POLICY "Permitir leitura pública catalogo"
ON storage.objects FOR SELECT
USING (bucket_id = 'catalogo');
-- Política de upload
CREATE POLICY "Permitir upload autenticado catalogo"
ON storage.objects FOR INSERT
WITH CHECK (
bucket_id = 'catalogo' AND
(auth.role() = 'authenticated' OR auth.role() = 'service_role')
);
-- Política de atualização
CREATE POLICY "Permitir update autenticado catalogo"
ON storage.objects FOR UPDATE
USING (
bucket_id = 'catalogo' AND
(auth.role() = 'authenticated' OR auth.role() = 'service_role')
);
-- Política de exclusão
CREATE POLICY "Permitir delete autenticado catalogo"
ON storage.objects FOR DELETE
USING (
bucket_id = 'catalogo' AND
(auth.role() = 'authenticated' OR auth.role() = 'service_role')
);
- Clique em "Run" (ou F5)
- Aguarde a mensagem de sucesso
- Testar
- Volte para o sistema
- Acesse Site / Catalogo
- Clique em "Fotos" em qualquer produto
- Tente adicionar uma foto
- Deve funcionar! ✅
🎯 Opção 2: Via SQL (Mais Rápido se você sabe SQL)
- Acesse o Supabase Dashboard
- Vá em SQL Editor
- Copie todo o arquivo:
sql/setup-bucket-catalogo.sql - Cole no editor
- Execute (Run)
- Verifique as mensagens de sucesso
🔍 Verificar se Funcionou
Execute este comando para testar:
node test-upload-catalogo.js
Se aparecer:
✅ Bucket "catalogo" existe!
✅ Upload teste realizado com sucesso!
🎉 TODOS OS TESTES PASSARAM!
Então está tudo certo!
❓ Troubleshooting
Erro: "new row violates row-level security policy"
Causa: Políticas RLS não configuradas
Solução: Execute o passo 6 acima (políticas SQL)
Erro: "Bucket already exists"
Causa: Bucket já foi criado
Solução: Pule para o passo 6 (configurar políticas)
Upload ainda não funciona
Verifique:
- ✅ Bucket marcado como "Public"
- ✅ Políticas RLS criadas
- ✅ Servidor reiniciado (se necessário)
Fotos não aparecem no site
Verifique:
- ✅ Bucket é público
- ✅ URL correta:
https://...supabase.co/storage/v1/object/public/catalogo/...
📋 Checklist Final
Antes de usar o sistema de fotos, verifique:
- Bucket
catalogocriado - Bucket marcado como Public
- Limite de 5MB configurado
- 4 políticas RLS criadas (SELECT, INSERT, UPDATE, DELETE)
- Teste executado com sucesso
- Upload funciona no painel admin
- Fotos aparecem no site público
🎉 Pronto!
Depois de seguir estes passos, o sistema de fotos adicionais estará funcionando perfeitamente!
Você poderá:
- ✅ Adicionar fotos extras para cada produto
- ✅ Ver galeria completa no site
- ✅ Gerenciar fotos pelo painel admin
- ✅ Deletar fotos individuais
Precisa de ajuda? Verifique os logs do navegador (F12 > Console) para ver erros específicos.