Sto cominciando a incorporare Alambicco nel mio progetto, che utilizza già le definizioni SQLAlchemy tavolo. Al momento il mio schema DB è gestito esternamente alla mia applicazione e voglio portare l'intero schema nel mio file di definizioni di tabelle.Come rappresentare un dominio PostgreSQL personalizzato in SQLAlchemy?
In PostgreSQL Io uso un dominio personalizzato per la memorizzazione di indirizzi di posta elettronica. Il PostgreSQL DDL è:
CREATE DOMAIN email_address TEXT CHECK (value ~ '[email protected]+')
Come si rappresentano la creazione di questo dominio, e l'uso di esso come un tipo di dati di colonna, in SQLAlchemy?
Questa domanda sembra un po 'più avanzato, forse si può trovare di meglio di aiuto alla lista SQLAlchemy. Per l'utilizzo del tipo, consiglierei di trovare un modo per creare sottoclassi 'TEXT' e cambiarne il nome in' email_address'. Questo sarebbe il modo più semplice (ma non so come farlo). L'ultima parte potrebbe probabilmente essere eseguita da SQL letterale, perché non sono sicuro che SQLAlchemy abbia un'interfaccia per la creazione di tipi che non esistono ancora. – javex
@javex per ora sto creando il dominio mediante l'emissione di DDL costume e ho sottoclasse 'UserDefinedType' per tornare' email_address' per la sua definizione tipo di colonna. Non ideale ma funziona abbastanza bene. Potrei controllare l'elenco SQLA, grazie per questo suggerimento. – skyler