Skip to main content

No project description provided

Project description

sqlalchemy GUID

This is a simple extension to SQLAlchemy that adds support for UUID with postgresql compatibility to other database dialects.

Installation

pip install sqlalchemy_guid

Usage

Basically, you just need to import the GUID type and use it in your models:

    import uuid
    from sqlalchemy.ext.declarative import declarative_base
    from sqlalchemy import Column, Integer
    from sqlalchemy_guid import GUID

    Base = declarative_base()

    class User(Base):
        __tablename__ = 'users'
        id = Column(Integer, primary_key=True)
        guid = Column(GUID, default=uuid.uuid4)

For postgresql it will use the native uuid type, for other database dialects it will use a CHAR(32), storing as stringified hex values.

Now, when you create a new user, the guid will be automatically generated:

    user = User()
    session.add(user)
    session.commit()
    print(user.guid)

It will also work with other database dialects, such as sqlite:

    from sqlalchemy import create_engine
    engine = create_engine('sqlite:///:memory:')
    Base.metadata.create_all(engine)

    session = Session(engine)
    user = User()
    session.add(user)
    session.commit()
    print(user.guid)

More sqlite examples can be found in the tests.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sqlalchemy_guid-1.0.2.tar.gz (2.7 kB view details)

Uploaded Source

Built Distribution

sqlalchemy_guid-1.0.2-py3-none-any.whl (3.4 kB view details)

Uploaded Python 3

File details

Details for the file sqlalchemy_guid-1.0.2.tar.gz.

File metadata

  • Download URL: sqlalchemy_guid-1.0.2.tar.gz
  • Upload date:
  • Size: 2.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.11.3 Darwin/22.4.0

File hashes

Hashes for sqlalchemy_guid-1.0.2.tar.gz
Algorithm Hash digest
SHA256 4e9bd0601784e32482b37875ef647c97aaaabbbfe0d78699f10a18d9038a8b77
MD5 c155c2fd95afb1adf2e5ba10c8880cf0
BLAKE2b-256 097e655081ec635d6bec4e155793e7b216548fd580bbc511f3df45d5c41e71f6

See more details on using hashes here.

File details

Details for the file sqlalchemy_guid-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: sqlalchemy_guid-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 3.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.11.3 Darwin/22.4.0

File hashes

Hashes for sqlalchemy_guid-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fab74417854ec82e0d8902dc0446350ca9c15f16444354db58da69835356be5d
MD5 f1a3acdcc396ac0688fd530c2228aef6
BLAKE2b-256 acd2d2a4ead34b8eb01062e3f047953ebc607991cf5bf5719bf4e4852263afa2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page