126 votes

Comment puis-je utiliser les UUID dans SQLAlchemy ?

Existe-t-il un moyen de définir une colonne (clé primaire) en tant qu'UUID dans SQLAlchemy si vous utilisez PostgreSQL (Postgres) ?

33voto

Kushal Ahmed Points 355

Si vous êtes satisfait d'une colonne 'String' ayant une valeur UUID, voici une solution simple :

def generate_uuid():
    return str(uuid.uuid4())

class MyTable(Base):
    __tablename__ = 'my_table'

    uuid = Column(String, name="uuid", primary_key=True, default=generate_uuid)

21voto

Berislav Lopac Points 3251

J'ai utilisé le UUIDType du packageSQLAlchemy-Utils .

16voto

Kamil Kisiel Points 7298

Voir aussi la recette pour le Type GUID Backend-agnostic dans la documentation SQLAlchemy pour les types de colonnes.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X