Jet\DataModel

Základní abstraktní třída, od které dědí všechny entity.

Přehled metod

Metoda Význam
public static getDataModelDefinition(
string $class_name=''
) : DataModel_Definition_Model
Statická metoda, která vrací definici dané entity.

Dá se použít dvěma způsoby:

Buď v přímém kontextu s danou třídou:
$definition SomeEntity::getDataModelDefinition();
Nebo v obecném kontextu:
$definition DataModel::getDataModelDefinitionSomeEntity::class );
public static dataModelDefinitionType(
) : string
Statická metoda vrátí o jaký typ entity se jedná: $type SomeEntity::dataModelDefinitionType(); Vrací jednu z těchto konstant:
  • DataModel::MODEL_TYPE_MAIN
  • DataModel::MODEL_TYPE_RELATED_1TON
  • DataModel::MODEL_TYPE_RELATED_1TO1
public getIDController(
) : DataModel_IDController
Vrátí instanci ID kontroleru napojenou na instanci entity.
public static getEmptyIDController(
) : DataModel_IDController
Vrátí obecnou nenapojenou instanci ID kontroleru.
public setIsNew(
) : void
Nastaví interní stav tak, že je daný objekt považován za nový - ještě neuložený. Při ukládání se tedy bude provádět akce insert a ne update. Hodí se například při klonování.

Pozor! Metoda pouze nastavuje interní stav. Neresetuje ID a podobně - to je věcí logiky vaší aplikace.
public getIsNew(
) : bool
Indikuje zda je objekt považován za nový - ještě neuložený.
public getIsSaved(
) : bool
Indikuje zda je objekt považován za již uložený.
public setIsSaved(
) : void
Nastavuje objekt do stavu "uložen". Tedy při příštím ukládání se bude provádět operace update. Primárně určeno pro interní účely.
public static getBackendInstance(
) : DataModel_Backend
Vrátí přichystanou instanci backendu na základě definice.
public startBackendTransaction(
) : void
Metoda se primárně používá interně. Jak název napovídá, tak zahájí transakci při modifikačních operacích (ukládání, mazání).
public getBackendTransactionStarted(
) : bool
Metoda se primárně používá interně. Indukuje zda již byla transakce zahájena.
public commitBackendTransaction(
) : void
Metoda se primárně používá interně. Ukončuje a odesílá transakci.
public getBackendTransactionStartedByThisInstance(
) : bool
Metoda se primárně používá interně. Indukuje zda již byla transakce zahájena a to zrovna daným objektem (tou instancí, která metodu volá).
public rollbackBackendTransaction(
) : void
Metoda se primárně používá interně. Zruší a navrátí transakci.
public getLoadFilter(
) : DataModel_PropertyFilter|null
Indikuje zda je aktivní režim omezeného načítání a pokud ano, vrátí instanci definice pravidel omezení.
public static createQuery(
array $where=[]
) : DataModel_Query
Vytvoří obecnou instanci definice dotazu. Primárně interní metoda.
public static initByData(
array $this_data,
array $related_data=[],
DataModel_PropertyFilter $load_filter=null
) : static
Interní metoda sloužící při načítání. Slouží k vytváření instancí entit na základě dat načtených z databáze.
public static load(
array|string|int|DataModel_IDController $id_or_where,
array|DataModel_PropertyFilter|null $load_filter=null
) : static|null
Slouží k načtení jedné konkrétní instance entity.
public static fetch(
array $where_per_model=[],
array|string|null $order_by=null,
?callable $item_key_generator=null,
array|DataModel_PropertyFilter|null $load_filter=null
) : array
Slouží k nízkoúrovňovému načtení více instancí entit.
public static dataFetchAll(
array $select,
array $where,
null|array|string $group_by = null,
null|array $having = null,
null|string|array $order_by=null,
null|int $limit=null,
null|int $offset=null
) : mixed
Slouží k nízkoúrovňovému načtení surových dat - nikoliv instancí entit.

Prosté nahrání všech dat.
public static dataFetchAssoc(
array $select,
array $where,
null|array|string $group_by = null,
null|array $having = null,
null|string|array $order_by=null,
null|int $limit=null,
null|int $offset=null
) : mixed
Slouží k nízkoúrovňovému načtení surových dat - nikoliv instancí entit.

První vlastnost bude brána jako klíč pole výsledného seznamu.
public static dataFetchCol(
array $select,
array $where,
null|array|string $group_by = null,
null|array $having = null,
null|string|array $order_by=null,
null|int $limit=null,
null|int $offset=null
) : mixed
Slouží k nízkoúrovňovému načtení surových dat - nikoliv instancí entit.

Výsledkem bude prosté jednorozměrné pole tvořené první nahranou vlastností entity.
public static dataFetchPairs(
array $select,
array $where,
null|array|string $group_by = null,
null|array $having = null,
null|string|array $order_by=null,
null|int $limit=null,
null|int $offset=null
) : mixed
Slouží k nízkoúrovňovému načtení surových dat - nikoliv instancí entit.

Vrátí asociované pole, kde klíčem bude první určená vlastnost a hodnotou ta druhá.
public static dataFetchRow(
array $select,
array $where,
null|array|string $group_by = null,
null|array $having = null,
null|string|array $order_by=null,
null|int $limit=null,
null|int $offset=null
) : mixed
Slouží k nízkoúrovňovému načtení surových dat - nikoliv instancí entit.

Vrátí pouze jeden řádek.
public static dataFetchOne(
array $select,
array $where,
null|array|string $group_by = null,
null|array $having = null,
null|string|array $order_by=null,
null|int $limit=null,
null|int $offset=null
) : mixed
Slouží k nízkoúrovňovému načtení surových dat - nikoliv instancí entit.

Vrátí pouze jednu hodnotu.
public static fetchInstances(
array $where=[],
array $load_filter=[]
) : DataModel_Fetch_Instances
Slouží k nepřímému načtení prostřednictvím iterátoru Jet\DataModel_Fetch_Instances.
public static fetchIDs(
array $where=[]
) : DataModel_Fetch_IDs
Slouží k nepřímému načtení seznamu ID prostřednictvím iterátoru Jet\DataModel_Fetch_IDs.
public save(
) : void
Uložení entity do databáze.
public static updateData(
array $data,
array $where
) : void
Úprava dílčích dat entity v databázi.
public delete(
) : void
Smazání entity.
public dataDelete(
array $where
) : void
Smaže specifický záznam nebo záznamy z databázové tabulky.
public toJSON(
) : string
Export entity do formáty JSON.
public jsonSerialize(
) : array
Export entity do formáty JSON. Entitu je možné předat funkci json_encode.
public afterLoad(
) : void
Viz události
public beforeSave(
) : void
Viz události
public afterAdd(
) : void
Viz události
public afterUpdate(
) : void
Viz události
public afterDelete(
) : void
Viz události
Předchozí kapitola
Do hloubky
Další kapitola
Jet\DataModel_Related