This bundle adds a Service to your Pimcore project, which can resolve vite assets.
composer require carbdrox/pimcore-querybuilder-bundle
You can either use the service directly or use the provided trait.
use QueryBuilderBundle\Service\QueryService;
use Pimcore\Model\DataObject\DummyData;
$queryService = new QueryService(DummyData::class);
if you want to use the provided trait, you must either add \QueryBuilderBundle\Traits\HasQueryBuilder
in your
DataObject definition in the Use(traits) field, or extend your DataObject class and insert
use \QueryBuilderBundle\Traits\HasQueryBuilder;
there.
The trait adds the following static methods to your DataObject class:
Method | Returns |
---|---|
query() | QueryBuilder |
orderBy(string $field, string $order = 'asc') | QueryBuilder |
limit(int $limit) | QueryBuilder |
offset(int $offset) | QueryBuilder |
count() | int |
first() | Concrete|null |
all() | array |
where(string|\Closure $field, string $operation, mixed $value, bool $escaped = true) | QueryBuilder |
The service provides the following methods:
Method | Returns |
---|---|
where(string|\Closure $field, string $operation = '=', mixed $value = '', bool $escaped = true) | QueryBuilder |
whereNested(\Closure $callback) | QueryBuilder |
orWhere(string|\Closure $field, string $operation = '=', mixed $value = '', bool $escaped = true) | QueryBuilder |
orWhereNested(\Closure $callback) | QueryBuilder |
join(string $tableName, string $name) | QueryBuilder |
limit(int $limit) | QueryBuilder |
offset(int $offset) | QueryBuilder |
orderBy(string $field, string $order = 'asc') | QueryBuilder |
groupBy(string $column) | QueryBuilder |
count() | int |
get() | array |
first() | Concrete|null |
all() | array |
toSql() | string |
paginate(int $page = 1, int $perPage = 10) | PaginationInterface |
Thank you for considering contributing! The contribution guide can be found in the CONTRIBUTING.md.
Please review and abide by the Code of Conduct.
The Pimcore Vite bundle is licensed under the MIT license.
- Add tests
- The join method needs to be revised so that you don't have to manually join from the alphabetically smaller class to the larger one.