Todo
Classes summary
Phramework\JSONAPI\RelationshipResource |
view http://jsonapi.org/format/#document-resource-identifier-objects MUST: id, type MAY: meta |
Phramework\JSONAPI\Resource |
add magic set and get, set will instantiate a property if it's null, to reduce output of json to minimal required |
Phramework\JSONAPI\Sort |
allow multiple values for sort |
Methods summary
Phramework\JSONAPI\Controller\GET | handleGET() |
Force parsing of relationship data when included |
Phramework\JSONAPI\Controller\GETById | handleGETByid() |
Force parsing of relationship data when included |
Phramework\JSONAPI\Controller\PATCH | handlePATCH() |
clear call to getById allow null values patch relationship data rethink output |
Phramework\JSONAPI\Controller\POST | handlePOST() |
handle as transaction queue, Since models usually are not producing exceptions. Prepare data until last possible moment, so that any exceptions can be thrown, and finally invoke the execution of the queue. validate type |
Phramework\JSONAPI\Fields | validate() |
|
Phramework\JSONAPI\Filter | validate() |
add relationship validator |
Phramework\JSONAPI\Filter | parseFromParameters() |
allow strings and integers as id Todo use filterValidation model for relationships allowed operator for JSON properties add support for operators of class in, parsing input using explode , (as array) |
Phramework\JSONAPI\Model | collection() |
Add example |
Phramework\JSONAPI\Model | resource() |
Add example |
Phramework\JSONAPI\Model | post() |
disable post ? |
Phramework\JSONAPI\Model | patch() |
add query limit |
Phramework\JSONAPI\Model | getDefaultPage() |
make current applied page somehow visible at meta |
Phramework\JSONAPI\Model\Directives | handleFilter() |
check if query work both in MySQL and postgreSQL |
Phramework\JSONAPI\Model\Model | getCast() |
Rewrite validationModel's attributes |
Phramework\JSONAPI\Model\Relationship | getIncludedData() |
handle Relationship resource cannot be accessed include second level relationships multiple (batch) getById at once |
Phramework\JSONAPI\Page | parseFromParameters() |
add default pagination based on $modelClass $page = Page::parseFromParameters( (object) [ 'page' => [ 'limit' => 0, 'offset' => 0 ] ], //Request parameters object Article::class ); |
Phramework\JSONAPI\Resource | parseFromRecord() |
what about getRelationshipData method ? |
Phramework\JSONAPI\Sort | validate() |