Files
payloadcms/packages/db-vercel-postgres
Sasha f442d22237 feat(db-*): allow to thread id to create operation data without custom IDs (#11709)
Fixes https://github.com/payloadcms/payload/issues/6884

Adds a new flag `acceptIDOnCreate` that allows you to thread your own
`id` to `payload.create` `data`, for example:

```ts
// doc created with id 1
const doc = await payload.create({ collection: 'posts', data: {id: 1, title: "my title"}})
```

```ts
import { Types } from 'mongoose'
const id = new Types.ObjectId().toHexString()
const doc = await payload.create({ collection: 'posts', data: {id, title: "my title"}})
```
2025-03-17 23:48:35 -04:00
..
2025-03-12 17:27:26 -04:00

Payload Postgres Adapter

Vercel Postgres adapter for Payload.

Installation

npm install @payloadcms/db-vercel-postgres

Usage

Explicit Connection String

import { buildConfig } from 'payload'
import { vercelPostgresAdapter } from '@payloadcms/db-vercel-postgres'

export default buildConfig({
  db: vercelPostgresAdapter({
    pool: {
      connectionString: process.env.DATABASE_URI,
    },
  }),
  // ...rest of config
})

Automatic Connection String Detection

Have Vercel automatically detect from environment variable (typically process.env.POSTGRES_URL)

export default buildConfig({
  db: postgresAdapter(),
  // ...rest of config
})

More detailed usage can be found in the Payload Docs.