[HN Gopher] Show HN: Django Ninja CRUD - Rethinking CRUD Operati...
___________________________________________________________________
Show HN: Django Ninja CRUD - Rethinking CRUD Operations in Django
I've developed Django Ninja CRUD, a tool to simplify CRUD
operations in Django by leveraging Django Ninja's strengths. It
aims to make CRUD operations more intuitive, modular, and
efficient, especially for large-scale projects. Key aspects: -
Declarative, intuitive CRUD operations. - Modular approach with
composition-over-inheritance. - Enhanced testing capabilities for
robust applications. The tool is designed to transform Django
development workflows, improving efficiency and maintainability.
Read more about the development, features and roadmap here:
https://medium.com/@hbakri/introducing-django-ninja-crud-ee9...
GitHub Repository: https://github.com/hbakri/django-ninja-crud I'm
eager to hear your feedback and hope it adds value to your Django
projects!
Author : hichambakri
Score : 28 points
Date : 2023-12-13 21:43 UTC (1 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| fvdessen wrote:
| I've been making APIs in django for years and for each project,
| at some point the API behaviour needs to differ from the model.
| It is not clear from the README how would one handle that use
| case.
| pryelluw wrote:
| I use Django ninja because it's minimal and uncoupled from
| everything else. Like the framework it is based on fast api.
|
| Coupling to the ORM the api contract (schemas) is much closer to
| Django rest framework than id like.
|
| My approach is to have a schema factory that takes query results
| and outputs instances schema models. The schema handles all the
| contract level validation.
|
| What benefits do you reason your project brings over my approach?
| I'm genuinely interested in a technical discussion. Not starting
| a flame war or baiting you.
| pdhborges wrote:
| I'll be blunt, having experienced the damage caused by DRF Model*
| accelerators in mid sized codebases I just hate it.
|
| CRUD stops being CRUD quickly, these CRUD accelerators just
| intruduce more non linearity into the development. Its easy to
| hit a wall and hack around the accelerator to make a little bit
| custom behaviour leaving behind API implementations that are
| totaly "irregular" from each other each one mixing different low
| level changes in the middle of high level accelerators.
___________________________________________________________________
(page generated 2023-12-13 23:00 UTC)