Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

`@default` on a field of a `@map`-ed enum emits the enum name as the column default

Aperta Adatta ai principianti
#2,868 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@jkugsiya ci sta già lavorando.

Dal 13/10/2026.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
78/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
postgresql, typescript
Ambito
backend, databases

Direzione di ricerca

Leggi packages/orm/src/client/helpers/schema-db-pusher.ts, concentrandoti sul ramo col.defaultTo(fieldDef.default) e sulla gestione di @map nelle vicinanze. Trova ed esegui i test esistenti per il push degli schemi; il lavoro è completato quando un valore predefinito enum mappato usa il proprio valore di database mappato nel DDL generato e il push dello schema di riproduzione a PostgreSQL riesce.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

runtime

Summary

When an enum member has a @map-ed value and a field uses it as the default, db push emits the enum name rather than the mapped database value as the column default. On PostgreSQL table creation fails.

Repro

enum PostStatus {
    DRAFT  @map('draft')
    ACTIVE @map('active')
}

model User {
    id     Int        @id @default(autoincrement())
    status PostStatus @default(DRAFT)
}

Pushing this schema to PostgreSQL fails with:

invalid input value for enum "PostStatus": "DRAFT"

The generated DDL contains DEFAULT 'DRAFT' while the PostgreSQL enum type only has the values 'draft' and 'active'.

Where

packages/orm/src/client/helpers/schema-db-pusher.ts, the col.defaultTo(fieldDef.default) branch. The enum type itself is created with the mapped values (see the @map handling a few lines above in the same file), but the default is passed through unmapped.

Found while probing mapped-enum behavior for #2807.

Lingua principale
TypeScript
Stelle
2.9k
Fork
157
Merge medio
2g 46m
PR unite (30g)
17

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di zenstackhq/zenstack

Tutte le issue di zenstackhq/zenstack

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.