This release introduces a significant improvement to the project's documentation by migrating from the basic README-based documentation to a more robust and visually appealing setup using **Material for MkDocs**. This change enhances the overall user experience by providing a structured, easy-to-navigate, and professionally styled documentation site.
---
Added
- **Material for MkDocs Documentation:**
- Replaced the old README-based documentation with a new site built using Material for MkDocs.
- Added a clear navigation structure to help users easily find information and examples.
- Included detailed documentation sections covering installation, usage, and complex features like filtering with `Q` objects.
- Set up GitHub Actions for automatic deployment of the documentation site.
Refactoring
- **Documentation Overhaul:**
- Removed most of the old documentation from the README and streamlined it to point to the new, comprehensive documentation site.
- Enhanced formatting, readability, and structure across all documentation files using markdown extensions specific to MkDocs.
Features and Roadmap
<!--roadmap-start-->
- [x] Define table schema using Pydantic models
- [x] Basic CRUD operations
- [x] Save data to the database
- [x] Read data from the database
- [x] Update data in the database
- [x] Delete data from the database
- [x] Relationships between tables
- [x] One-to-many
- [x] Create a tables with a foreign key
- [x] Save data with a foreign key
- [x] Read data with a foreign key
- [x] Update data with a foreign key
- [x] Delete data with a foreign key
- [X] Cascade
- [x] Set null
- [x] Restrict
- [x] Set default
- [x] No action
- [x] One-to-one
- [x] Many-to-many
- [x] Unique constraints
- [x] Remove table
- [x] Read all data from the database
- [x] Filter data and retrieve multiple records
- [x] Equal
- [x] Not equal
- [x] Greater than
- [x] Greater than or equal
- [x] Less than
- [x] Less than or equal
- [x] Like (Pattern matching with % and _)
- [x] Not like (Pattern matching with % and _)
- [x] In (List of values)
- [x] Not in (List of values)
- [x] Between (Two values)
- [x] Not between (Two values)
- [x] Q objects to combine filters (AND, OR, NOT)
- [x] Protect against SQL injection
- [x] Order by
- [x] Limit and offset
- [x] Update table schema
- [x] Add new column
- [x] Rename column
- [x] Drop column
- [ ] Custom primary key
- [ ] Functions
- [ ] Aggregate functions
- [ ] String functions
- [ ] Date and time functions
- [ ] Mathematical functions
- [ ] Control flow functions
- [ ] Bulk operations (save, update, delete)
- [ ] Migrations
**Full Changelog**: https://github.com/SpaceShaman/ORMagic/compare/v0.12.0...v0.12.1