Sqlalchemy seeder that supports nested relationships.
Supported file types
- json
- yaml
- csv
Default installation
pip install sqlalchemyseed
main.py
from sqlalchemyseed import load_entities_from_json
from sqlalchemyseed import Seeder
from db import session
# load entities
entities = load_entities_from_json('data.json')
# Initializing Seeder
seeder = Seeder(session)
# Seeding
seeder.seed(entities)
# Committing
session.commit() # or seeder.session.commit()
data.json
{
"model": "models.Person",
"data": [
{
"name": "John March",
"age": 23
},
{
"name": "Juan Dela Cruz",
"age": 21
}
]
}
https://sqlalchemyseed.readthedocs.io/
Report here in this link: https://github.com/jedymatt/sqlalchemyseed/issues
First, Clone this repository.
Inside the folder, paste this in the terminal to install necessary dependencies:
pip install -r requirements.txt -r docs/requirements.txt
Note: make sure you have the virtual environment and enabled, or if you are using vs code and docker then you can simply re-open this as container.
Before running tests, make sure that the package is installed as editable:
python setup.py develop --user
Then run the test:
pytest tests
Run test with coverage
coverage run -m pytest
Autobuild documentation
sphinx-autobuild docs docs/_build/html