Skip to main content

Automatic model code generator for SQLAlchemy with Flask support

Project description

Flask sqlacodegen

Fork of sqlacodegen by Alex Gronholm.

What's different:

  • Support for Flask-SQLAlchemy syntax using --flask option.
  • Defaults to generating backrefs in relationships. --nobackref still included as option in case backrefs are not wanted.
  • Naming of backrefs is class name in snake_case (as opposed to CamelCase) and is pluralized if it's Many-to-One or Many-to-Many using inflect.
  • Primary joins are explicit.
  • If column has a server_default set it to FetchValue() instead of trying to determine what that value is. Original code did not set the right server defaults in my setup.
  • --ignore-cols ignores special columns when generating association tables. Original code requires all columns to be foreign keys in order to generate association table. Example: --ignore-cols id,inserted,updated.
  • Uses the command flask-sqlacodegen instead of sqlacodegen.
  • Added support for --notables to only generate model classes, even for association tables

Install

With pip:

pip install flask-sqlacodegen

Without pip:

git clone https://github.com/ksindi/flask-sqlacodegen.git
cd flask-sqlacodegen/
python setup.py install

For contributing:

git clone https://github.com/ksindi/flask-sqlacodegen.git
python -m venv env
pip install -r requirements.txt
python -m sqlacodegen.main --flask --outfile models.py mysql+pymysql://<username>:<password>@<database-ip>:<port>/<database-name> [--tables <tablenames>] [--notables]

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

flask-sqlacodegen-2.0.0.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

flask_sqlacodegen-2.0.0-py2.py3-none-any.whl (13.2 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file flask-sqlacodegen-2.0.0.tar.gz.

File metadata

  • Download URL: flask-sqlacodegen-2.0.0.tar.gz
  • Upload date:
  • Size: 12.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for flask-sqlacodegen-2.0.0.tar.gz
Algorithm Hash digest
SHA256 b52847fac9d81696760da42327c1b0506113d4c95f6b46cf3e7d528cbff4d705
MD5 42b378ed836f6604202512232732fe93
BLAKE2b-256 7266aa20de8f231576896e00c362ee13a5e08eb71bad6c2a23c9f429899185d1

See more details on using hashes here.

File details

Details for the file flask_sqlacodegen-2.0.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for flask_sqlacodegen-2.0.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 803bd6d1b6f8d6c4037f630cd608c0df9b0efcd6fb0eefe536018da9f34888fe
MD5 ec7a8d90280af06e642425a9c0299612
BLAKE2b-256 f37092f070d909c41f714c14bee03d07a5011f0d61d5ea78e037e6267cb4b9ce

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