The Joomla! ORM package provides a storage access abstraction using repositories for your application.
This package is in a pre-alpha state; use it to get familiar with it and to improve it, but do not use it in production, unless you really know what you are doing.
Simply run the following from the command line in your project's root directory (where your composer.json
file is):
composer require joomla-x/orm:dev-master
Please review https://framework.joomla.org/contribute for information on how to contribute to the Framework's development.
- Implement handling of entity role
- Don't create reverse relations for
lookup
tables
- Don't create reverse relations for
- Implement fieldset handling
- Relation Handling
- Implement belongsToMany handling on installation
- Implement handling of belongsToMany relations in UnitOfWork::checkForChangedRelations()
- Implement handling of hasMany relations in UnitOfWork::checkForChangedRelations()
- Implement handling of hasManyThrough relations in UnitOfWork::checkForChangedRelations()
- Move Entity DTD to a Joomla repository when it is stable enough
- Replace DTD with XMLSchema, so
<xs:alternative test="@type=string">
can be used to specify attributes that are specific to certain field types. See this StackOverflow answer for more information. - Apply validation according to definition in
EntityBuilder::castToEntity()
- Use entity name instead of table name in
EntityBuilder::resolveHasManyThrough()
- Add
__call()
method to Repository to proxy anyget*()
methods from the DataMappers - Implement handler selection according to entity definition
- Implement
entity="@field_name"
syntax for belongsTo relations