Package provides utilities for managing fixture data python applications. It offers a convenient way to populate database tables with predefined data.
Project description
Masonite Fixtures
The masonite-fixtures package provides utilities for managing fixture data in python applications. It offers a convenient way to populate database tables with predefined data.
Installation
You can install masonite-fixtures via pip:
pip install masonite-fixtures
Features
- Initialize fixture data for database tables effortlessly.
- Automatically create database tables based on the schema of the fixture model.
- Populate database tables with data defined in the fixture model using either
get_rowsmethod orrowsproperty. - Enable query logging for debugging and monitoring database interactions.
Usage
To use the masonite-fixtures package, follow these steps:
- Import your model class that implements the
FixtureMixin. - Mix the
FixtureMixininto your model class.
That's it.
3. Optionally, set the __log_queries__ attribute to True to enable query logging.
Example:
from typing import Any
from masoniteorm.models import Model
from masonite_fixtures import FixtureMixin
# Example using get_rows method:
class User(Model, FixtureMixin):
def get_rows(self) -> list[dict[str, Any]]:
return [
{"name": "John", "age": 30},
{"name": "Alice", "age": 25},
# Add more rows as needed
]
# Example using rows attribute:
class User(Model, FixtureMixin):
rows: list[dict[str, Any]] = [
{"name": "John", "age": 30},
{"name": "Alice", "age": 25},
# Add more rows as needed
]
Thats it. You can now use the model as you would any other masoniteorm model.
Important
If the number of rows defined in the rows attribute or get_rows property of the fixture model class exceeds the number of rows stored in the actual database cache for the fixture, the fixture will reset the database table and reseed the fixture data.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file masonite-fixtures-0.0.5.tar.gz.
File metadata
- Download URL: masonite-fixtures-0.0.5.tar.gz
- Upload date:
- Size: 3.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bc8aa832f4fe304f873fe79693e4b77cb57ae3afd15c2b21da1233dc6c493dbb
|
|
| MD5 |
7257a03b0204a206b8265c370611a520
|
|
| BLAKE2b-256 |
360033c653bd2fafc0ced7f0e21773468fe3c72a741b58ea9152651a5179aad5
|
File details
Details for the file masonite_fixtures-0.0.5-py3-none-any.whl.
File metadata
- Download URL: masonite_fixtures-0.0.5-py3-none-any.whl
- Upload date:
- Size: 4.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7ff11d843c13a2652f91080b11eac93ae00159ad6852f9f415478f3dd201c75d
|
|
| MD5 |
2e6a308290868eec10eb118744c0e135
|
|
| BLAKE2b-256 |
901c2e10bcf2e4de872d278d65cac672c9e52a28fa8d74c570b1bf08dce96ea0
|