Aqui está minha configuração atual de coleção de mídia:
import type { CollectionConfig } from "payload";
export const Media: CollectionConfig = {
slug: "media",
...
access: {
read: () => true,
},
fields: [
{
name: "alt",
type: "text",
required: true,
},
],
upload: {
staticDir: "norrkeoeping",
adminThumbnail: "thumbnail",
},
};
E aqui está minha configuração geral de carga útil:
plugins: [
vercelBlobStorage({
collections: {
media: true,
},
token: process.env.BLOB_READ_WRITE_TOKEN,
}),
payloadCloudPlugin(),
importExportPlugin({}),
],
Achei que a configuração acima deveria ser suficiente. Ter o "staticDir: "norrkeoeping"" criando uma nova pasta quase no armazenamento de blobs do Vercel em cada upload. Mas esse não é o caso. Cada vez que eu carrego uma imagem, por exemplo, por meio do recurso de upload do administrador do Payload, ele carrega o arquivo com sucesso, mas apenas despeja o arquivo no diretório "raiz" no armazenamento de blobs do Vercel.
Isso faz com que meu explorador de armazenamento de blobs no Vercel pareça muito bagunçado. Especialmente porque agora estou começando a usar aquele armazenamento de blobs para vários projetos. Portanto, eu gostaria muito de uma pasta para cada projeto.
Pergunta adicional, como o PayloadCMS realmente lida com o armazenamento de blob Vercel? Pergunto porque fiquei surpreso ao ver a mesma conexão de armazenamento de blob Vercel em um projeto mostrar apenas os arquivos enviados por meio do upload do administrador de payload e o outro apenas seus arquivos enviados especificamente.
Como isso funciona? Tem a ver com o segredo do Payload que você tem que criar, talvez? Não gosto da mistificação do recurso de upload de blob.
Aqui estão os documentos: