-
Notifications
You must be signed in to change notification settings - Fork 47
readme template
Agile Data implements a new Database Access Logic created out of frustration with ORM performance issues, lack of proper domain model implementation in major frameworks and lack of unified support for SQL and NoSQL databases.
Everything you can do with raw SQL (or NoSQL), you can also do with Agile Data
Although Agile Data is a very young project, we have built a solid foundation with the aim to expose database features to the developer (such as sub-selects, joins, unions, expressions, aggregation and custom syntax) while abstracting implementation details.
We also take the enterprise requirements very seriously, so we took care of object-relational impedance mismatch and are working to build extensions such as Audit Log, ACL, Undo, Optional Joins, Derived Models, Import/Export tools and expressive RestAPI Server.
Agile Data is not a conventional ORM. We have redesigned the whole concept from the ground-up for the modern world where SQL, NoSQL and BigData live in peace.
Modern PHP frameworks have a lot of things to focus on, so the bundled database access tools are often lacking. Until now the only option was to use Doctrine 2, but with Agile Data you can get the same results in a much more elegant PHP-like way. In addition to all the basic features, Agile Data can help you in the complex situations without hacks:
Use Case | Laravel Eloquent | CakePHP3 ORM | ||
---|---|---|---|---|
Can my model automatically populate and link multiple tables? | No | |||
Can model field be populated from custom SQL expression? | No | |||
Does my Entity have to extend a God Class? | Yes | |||
If I rename "name" into "first_name" in database, will this affect my API | Yes | |||
Can relation reference model with scope? | Hack | |||
Will the mapper update only properties that I have changed? | Yes | |||
Can I load only specified fields into my model? | No |
Agile Data, Documentation and Wiki content is licensed under MIT and (c) by Agile Toolkit Limited UK