Download the PHP package watafactory/dwh-query-doctrine-bundle without Composer
On this page you can find all versions of the php package watafactory/dwh-query-doctrine-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download watafactory/dwh-query-doctrine-bundle
More information about watafactory/dwh-query-doctrine-bundle
Files in watafactory/dwh-query-doctrine-bundle
Package dwh-query-doctrine-bundle
Short Description This bundle extends DWH Bundle registering the types according the Doctrine to build the Graphql Schema
License GPL-3.0-or-later
Informations about the package dwh-query-doctrine-bundle
DWH Query Doctrine Bundle
About
The DWH uses GraphQL specification to retrieve the data.
This bundle uses and extends DwhQueryBundle through registering the types according to a Doctrine definition.
Installation
Via composer:
Development
In case you want to extend the library, you can set up a local installation using docker:
Run docker-compose up -d
to run app. By default, the docker-compose.yml
is used.
Run docker-compose exec apache-php composer install
to install the vendors.
This docker-compose file is used for development. It starts the following container:
- php: it contains the application source code
Documentation
This bundle automatically registers the types according the Doctrine definition of the entities and also create a resolver the automatically performs the query on this entity.
In order to use this bundle you need to change the schema_builder service in the dwh_query.yaml file:
Defining what entities you want to use
In the dwh_query_doctrine.yaml file you can configure what Doctrine entities you can query using GraphQL:
The bundle will automatically look for those entities and it will registry them as a GraphQL type.
Defining the resolvers
The bundle automatically will register a resolver for each of the types configured. This resolver is defined in the class Wata\DwhQueryDoctrineBundle\Resolver\DoctrineQueryResolver and will use the Wata\DwhQueryDoctrineBundle\Query\QueryBuilder to perform the query using Doctrine.
Defining the query
A basic query can be the following:
And the result:
A query with where and orderBy arguments:
A query retrieving entity associations:
And the results:
A query with groupBy arguments:
When you define the groupBy arguments you can retrieve these special fields:
- count__FIELDNAME: it performs a cound(FIELDNAME)
- sum__FIELDNAME: it performs a sum(FIELDNAME)
- avg__FIELDNAME: it performs a avg(FIELDNAME)
Operator in the where clause:
NOTE: if you want to use a field of an association in the where, orderBy or groupBy clauses you need to use association__fieldName like this:
License
See LICENSE.
All versions of dwh-query-doctrine-bundle with dependencies
symfony/config Version ^5.4
symfony/dependency-injection Version ^5.4
symfony/http-kernel Version ^5.4
doctrine/persistence Version ^2.0
doctrine/orm Version ^2.7
symfony/string Version ^5.4
watafactory/dwh-query-bundle Version ^1.0