Spec-Zone.ru › Phalcon 3

Абстрактный класс Phalcon\Mvc\Model\MetaData

реализует Phalcon\Di\InjectionAwareInterface, Phalcon\Mvc\Model\MetaDataInterface

Исходный код на GitHub

Поскольку Phalcon\Mvc\Model требует метаданных, таких как имена полей, типы данных, первичные ключи и т. д., этот компонент собирает их и сохраняет для дальнейшего запроса Phalcon\Mvc\Model. Phalcon\Mvc\Model\MetaData также может использовать адаптеры для временного или постоянного хранения метаданных.

Стандартный Phalcon\Mvc\Model\MetaData может использоваться для запроса атрибутов модели:

$metaData = new \Phalcon\Mvc\Model\MetaData\Memory();

$attributes = $metaData->getAttributes(
    new Robots()
);

print_r($attributes);

Константы

целое число MODELS_ATTRIBUTES

целое число MODELS_PRIMARY_KEY

целое число MODELS_NON_PRIMARY_KEY

целое число MODELS_NOT_NULL

целое число MODELS_DATA_TYPES

целое число MODELS_DATA_TYPES_NUMERIC

целое число MODELS_DATE_AT

целое число MODELS_DATE_IN

целое число MODELS_IDENTITY_COLUMN

целое число MODELS_DATA_TYPES_BIND

целое число MODELS_AUTOMATIC_DEFAULT_INSERT

целое число MODELS_AUTOMATIC_DEFAULT_UPDATE

целое число MODELS_DEFAULT_VALUES

целое число MODELS_EMPTY_STRING_VALUES

целое число MODELS_COLUMN_MAP

целое число MODELS_REVERSE_COLUMN_MAP

Методы

final protected _initialize (Phalcon\Mvc\ModelInterface $model, смешанный $key, смешанный $table, смешанный $schema)

Инициализирует метаданные для определённой таблицы

public setDI (Phalcon\DiInterface $dependencyInjector)

Устанавливает контейнер DependencyInjector

public getDI ()

Возвращает контейнер DependencyInjector

public setStrategy (Phalcon\Mvc\Model\MetaData\StrategyInterface $strategy)

Устанавливает стратегию извлечения метаданных

public getStrategy ()

Возвращает стратегию получения метаданных

final public readMetaData (Phalcon\Mvc\ModelInterface $model)

Читает полные метаданные для определённой модели

print_r(
    $metaData->readMetaData(
        new Robots()
    )
);

final public readMetaDataIndex (Phalcon\Mvc\ModelInterface $model, смешанный $index)

Читает метаданные для определённой модели

print_r(
    $metaData->readMetaDataIndex(
        new Robots(),
        0
    )
);

final public writeMetaDataIndex (Phalcon\Mvc\ModelInterface $model, смешанный $index, смешанный $data)

Записывает метаданные для определённой модели, используя константу MODEL_*

print_r(
    $metaData->writeColumnMapIndex(
        new Robots(),
        MetaData::MODELS_REVERSE_COLUMN_MAP,
        [
            "leName" => "name",
        ]
    )
);

final public readColumnMap (Phalcon\Mvc\ModelInterface $model)

Читает упорядоченный/обратный массив столбцов для определённой модели

print_r(
    $metaData->readColumnMap(
        new Robots()
    )
);

final public readColumnMapIndex (Phalcon\Mvc\ModelInterface $model, смешанный $index)

Читает информацию о массиве столбцов для определённой модели, используя константу MODEL_*

print_r(
    $metaData->readColumnMapIndex(
        new Robots(),
        MetaData::MODELS_REVERSE_COLUMN_MAP
    )
);

public getAttributes (Phalcon\Mvc\ModelInterface $model)

Возвращает имена атрибутов таблицы (поля)

print_r(
    $metaData->getAttributes(
        new Robots()
    )
);

public getPrimaryKeyAttributes (Phalcon\Mvc\ModelInterface $model)

Возвращает массив полей, входящих в состав первичного ключа

print_r(
    $metaData->getPrimaryKeyAttributes(
        new Robots()
    )
);

public getNonPrimaryKeyAttributes (Phalcon\Mvc\ModelInterface $model)

Возвращает массив полей, не входящих в состав первичного ключа

print_r(
    $metaData->getNonPrimaryKeyAttributes(
        new Robots()
    )
);

public getNotNullAttributes (Phalcon\Mvc\ModelInterface $model)

Возвращает массив атрибутов, не допускающих null значений

print_r(
    $metaData->getNotNullAttributes(
        new Robots()
    )
);

public getDataTypes (Phalcon\Mvc\ModelInterface $model)

Возвращает атрибуты и их типы данных

print_r(
    $metaData->getDataTypes(
        new Robots()
    )
);

public getDataTypesNumeric (Phalcon\Mvc\ModelInterface $model)

Возвращает атрибуты, типы которых являются числовыми

print_r(
    $metaData->getDataTypesNumeric(
        new Robots()
    )
);

public строка getIdentityField (Phalcon\Mvc\ModelInterface $model)

Возвращает имя поля идентификатора (если оно присутствует)

print_r(
    $metaData->getIdentityField(
        new Robots()
    )
);

public getBindTypes (Phalcon\Mvc\ModelInterface $model)

Возвращает атрибуты и их типы привязки данных

print_r(
    $metaData->getBindTypes(
        new Robots()
    )
);

public getAutomaticCreateAttributes (Phalcon\Mvc\ModelInterface $model)

Возвращает атрибуты, которые должны быть проигнорированы при генерации INSERT SQL

print_r(
    $metaData->getAutomaticCreateAttributes(
        new Robots()
    )
);

public getAutomaticUpdateAttributes (Phalcon\Mvc\ModelInterface $model)

Возвращает атрибуты, которые должны быть проигнорированы при генерации UPDATE SQL

print_r(
    $metaData->getAutomaticUpdateAttributes(
        new Robots()
    )
);

public setAutomaticCreateAttributes (Phalcon\Mvc\ModelInterface $model, массив $attributes)

Устанавливает атрибуты, которые должны быть проигнорированы при генерации INSERT SQL

$metaData->setAutomaticCreateAttributes(
    new Robots(),
    [
        "created_at" => true,
    ]
);

public setAutomaticUpdateAttributes (Phalcon\Mvc\ModelInterface $model, массив $attributes)

Устанавливает атрибуты, которые должны быть проигнорированы при генерации UPDATE SQL

$metaData->setAutomaticUpdateAttributes(
    new Robots(),
    [
        "modified_at" => true,
    ]
);

public setEmptyStringAttributes (Phalcon\Mvc\ModelInterface $model, массив $attributes)

Устанавливает атрибуты, которые допускают пустые строковые значения

$metaData->setEmptyStringAttributes(
    new Robots(),
    [
        "name" => true,
    ]
);

public getEmptyStringAttributes (Phalcon\Mvc\ModelInterface $model)

Возвращает атрибуты, допускающие пустые строки

print_r(
    $metaData->getEmptyStringAttributes(
        new Robots()
    )
);

public getDefaultValues (Phalcon\Mvc\ModelInterface $model)

Возвращает атрибуты (имеющие значения по умолчанию) и их значения по умолчанию

print_r(
    $metaData->getDefaultValues(
        new Robots()
    )
);

public getColumnMap (Phalcon\Mvc\ModelInterface $model)

Возвращает массив столбцов, если он существует

print_r(
    $metaData->getColumnMap(
        new Robots()
    )
);

public getReverseColumnMap (Phalcon\Mvc\ModelInterface $model)

Возвращает обратный массив столбцов, если он существует

print_r(
    $metaData->getReverseColumnMap(
        new Robots()
    )
);

public hasAttribute (Phalcon\Mvc\ModelInterface $model, смешанный $attribute)

Проверяет, содержит ли модель определённый атрибут

var_dump(
    $metaData->hasAttribute(
        new Robots(),
        "name"
    )
);

public isEmpty ()

Проверяет, пуст ли внутренний контейнер метаданных

var_dump(
    $metaData->isEmpty()
);

public reset ()

Сбрасывает внутренние метаданные для их повторной генерации

$metaData->reset();

abstract public read (смешанный $key) унаследовано от Phalcon\Mvc\Model\MetaDataInterface

...

abstract public write (смешанный $key, смешанный $data) унаследовано от Phalcon\Mvc\Model\MetaDataInterface

...

© 2011–2017 Phalcon Framework Team
Licensed under the Creative Commons Attribution License 3.0.
https://docs.phalconphp.com/en/latest/api/Phalcon_Mvc_Model_MetaData.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API