Oihana PHP Arango

JoinsTrait uses \oihana\traits\ContainerTrait

Table of Contents

Constants

JOINS  : string = 'joins'
The 'joins' parameter key.

Properties

$joins  : array<string|int, mixed>|null
The list of all joins definitions to generates basic relations with documents.

Methods

initializeJoins()  : static
Initialize the 'joins' definitions.
releasesJoins()  : static
Releases the 'joins' definitions.

Constants

JOINS

The 'joins' parameter key.

public string JOINS = 'joins'

Properties

$joins

The list of all joins definitions to generates basic relations with documents.

public array<string|int, mixed>|null $joins = null
Tags
example
$documents = new Documents
([
    AQL::JOINS =>
    [
         // each entry maps a local reference field to the related model joined on a key
         Schema::ADDITIONAL_TYPE => [ AQL::MODEL => 'placeTypes' , AQL::KEY => Schema::_KEY ] ,
         Schema::CONTAINS_PLACE  => [ AQL::MODEL => 'places'     , AQL::KEY => Schema::_KEY ] ,
    ],
    AQL::FIELDS =>
    [
        Schema::_KEY               => Filter::DEFAULT ,
        Schema::NAME               => Filter::DEFAULT ,
        Schema::CREATED            => Filter::DATETIME ,
        Schema::MODIFIED           => Filter::DATETIME ,
        Schema::ADDITIONAL_TYPE    => Filter::JOIN ,
        Schema::CONTAINS_PLACE     => Filter::JOINS ,
        Schema::NUM_CONTAINS_PLACE => Filter::JOINS_COUNT ,
    ]
]) ;

$places = $documents->list([ AQL::LIMIT => 0 ]) ;

echo( json_encode( $places , JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT ) ) ;

Methods

initializeJoins()

Initialize the 'joins' definitions.

public initializeJoins([array<string|int, mixed> $init = [] ]) : static
Parameters
$init : array<string|int, mixed> = []
Return values
static

releasesJoins()

Releases the 'joins' definitions.

public releasesJoins() : static
Return values
static
On this page

Search results