Phalcon\Mvc\Model\Manager
Класс Phalcon\Mvc\Model\Manager
Реализует Phalcon\Mvc\Model\ManagerInterface, Phalcon\Di\InjectionAwareInterface, Phalcon\Events\EventsAwareInterface
Эти компоненты управляют инициализацией моделей, сохраняя запись отношений между различными моделями приложения.
ModelsManager вводится в модель через инжектор зависимостей/контейнер служб, такой как Phalcon\Di.
<?php use Phalcon\Di; use Phalcon\Mvc\Model\Manager as ModelsManager; $di = new Di(); $di->set( "modelsManager", function() { return new ModelsManager(); } ); $robot = new Robots($di);
Методы
public setDI (Phalcon\DiInterface $dependencyInjector)
Устанавливает контейнер DependencyInjector
public getDI ()
Возвращает контейнер DependencyInjector
public setEventsManager (Phalcon\Events\ManagerInterface $eventsManager)
Устанавливает глобальный менеджер событий
public getEventsManager ()
Возвращает внутренний менеджер событий
public setCustomEventsManager (Phalcon\Mvc\ModelInterface $model, Phalcon\Events\ManagerInterface $eventsManager)
Задает пользовательский менеджер событий для конкретной модели
public getCustomEventsManager (Phalcon\Mvc\ModelInterface $model)
Возвращает пользовательский менеджер событий, связанный с моделью
public initialize (Phalcon\Mvc\ModelInterface $model)
Инициализирует модель в диспетчере моделей
public isInitialized (mixed $modelName)
Проверьте, инициализирована ли модель
public getLastInitialized ()
Вам последней инициализации модели
public load (mixed $modelName, [mixed $newInstance])
Загружает модель, выбрасывая исключение, если она не существует
public setModelPrefix (mixed $prefix)
Задает префикс для всех источников модели.
<?php use Phalcon\Mvc\Model\Manager; $di->set("modelsManager", function () { $modelsManager = new Manager(); $modelsManager->setModelPrefix("wp_"); return $modelsManager; }); $robots = new Robots(); echo $robots->getSource(); // wp_robots
public getModelPrefix ()
Возвращает префикс для всех источников модели.
<?php use Phalcon\Mvc\Model\Manager; $di->set("modelsManager", function () { $modelsManager = new Manager(); $modelsManager->setModelPrefix("wp_"); return $modelsManager; }); $robots = new Robots(); echo $robots->getSource(); // wp_robots
public setModelSource (Phalcon\Mvc\ModelInterface $model, mixed $source)
Устанавливает сопоставленный источник для модели
final public isVisibleModelProperty (Phalcon\Mvc\ModelInterface $model, mixed $property)
Проверяет, объявлено ли свойство модели как public.
<?php $isPublic = $manager->isVisibleModelProperty( new Robots(), "name" );
public getModelSource (Phalcon\Mvc\ModelInterface $model)
Возвращает сопоставленный источник для модели
public setModelSchema (Phalcon\Mvc\ModelInterface $model, mixed $schema)
Задает сопоставленную схему для модели
public getModelSchema (Phalcon\Mvc\ModelInterface $model)
Возвращает сопоставленную схему для модели
public setConnectionService (Phalcon\Mvc\ModelInterface $model, mixed $connectionService)
Устанавливает службу записи и чтения для модели
public setWriteConnectionService (Phalcon\Mvc\ModelInterface $model, mixed $connectionService)
Устанавливает службу подключения записи для модели
public setReadConnectionService (Phalcon\Mvc\ModelInterface $model, mixed $connectionService)
Устанавливает службу чтения для модели
public getReadConnection (Phalcon\Mvc\ModelInterface $model)
Возвращает соединение для чтения данных, относящихся к модели
public getWriteConnection (Phalcon\Mvc\ModelInterface $model)
Возвращает соединение для записи данных, связанных с моделью
protected _getConnection (Phalcon\Mvc\ModelInterface $model, mixed $connectionServices)
Возвращает соединение для чтения или записи данных, относящихся к модели, в зависимости от служб подключения.
public getReadConnectionService (Phalcon\Mvc\ModelInterface $model)
Возвращает имя службы подключения, используемое для чтения данных, относящихся к модели
public getWriteConnectionService (Phalcon\Mvc\ModelInterface $model)
Возвращает имя службы подключения, используемое для записи данных, относящихся к модели
public _getConnectionService (Phalcon\Mvc\ModelInterface $model, mixed $connectionServices)
Возвращает имя службы соединения, используемое для чтения или записи данных, связанных с моделью, в зависимости от служб подключения
public notifyEvent (mixed $eventName, Phalcon\Mvc\ModelInterface $model)
Получает события, сгенерированные в моделях, и отправляет их диспетчеру событий, если он доступен. Уведомлять поведение, которое прослушивается в модели.
public missingMethod (Phalcon\Mvc\ModelInterface $model, mixed $eventName, mixed $data)
Отправка события прослушивателям и поведениям этот метод ожидает, что слуатели/поведения конечных точек вернут значение true, означающее, что реализован хотя бы один из них
public addBehavior (Phalcon\Mvc\ModelInterface $model, Phalcon\Mvc\Model\BehaviorInterface $behavior)
Связывает поведение с моделью
public keepSnapshots (Phalcon\Mvc\ModelInterface $model, mixed $keepSnapshots)
Устанавливает, должна ли модель сохранять снимки
public isKeepingSnapshots (Phalcon\Mvc\ModelInterface $model)
Проверяет, сохраняет ли модель снимки для запрошенных записей
public useDynamicUpdate (Phalcon\Mvc\ModelInterface $model, mixed $dynamicUpdate)
Устанавливает, должна ли модель использовать динамическое обновление вместо обновления всего поля
public isUsingDynamicUpdate (Phalcon\Mvc\ModelInterface $model)
Проверяет, использует ли модель динамическое обновление вместо обновления всего поля
public Phalcon\Mvc\Model\Relation addHasOne (Phalcon\Mvc\Model $model, mixed $fields, string $referencedModel, mixed $referencedFields, [array $options])
Настройка отношения 1-1 между двумя моделями
public Phalcon\Mvc\Model\Relation addBelongsTo (Phalcon\Mvc\Model $model, mixed $fields, string $referencedModel, mixed $referencedFields, [array $options])
Настройка отношения обратного n-1 между двумя моделями
public addHasMany (Phalcon\Mvc\ModelInterface $model, mixed $fields, string $referencedModel, mixed $referencedFields, [array $options])
Устанавливает отношение 1-n между двумя моделями
public Phalcon\Mvc\Model\Relation addHasManyToMany (Phalcon\Mvc\ModelInterface $model, string $fields, string $intermediateModel, string $intermediateFields, string $intermediateReferencedFields, string $referencedModel, string $referencedFields, [array $options])
Устанавливает отношения n-m между двумя моделями
public existsBelongsTo (mixed $modelName, mixed $modelRelation)
Проверяет, есть ли у модели отношение "принадлежит" с другой моделью
public existsHasMany (mixed $modelName, mixed $modelRelation)
Проверяет, имеет ли модель отношение "имеет много" к другой модели
public existsHasOne (mixed $modelName, mixed $modelRelation)
Проверяет, имеет ли модель отношение "имеет один" к другой модели
public existsHasManyToMany (mixed $modelName, mixed $modelRelation)
Проверяет, имеет ли модель отношение "имеет много для многих" к другой модели
public getRelationByAlias (mixed $modelName, mixed $alias)
Возвращает отношение по его псевдониму
final protected _mergeFindParameters (mixed $findParamsOne, mixed $findParamsTwo)
Объединить два массива параметров поиска
public Phalcon\Mvc\Model\Resultset\Simple | Phalcon\Mvc\Model\Resultset\Simple | int | false getRelationRecords (Phalcon\Mvc\Model\RelationInterface $relation, mixed $method, Phalcon\Mvc\ModelInterface $record, [mixed $parameters])
Вспомогательный метод для запроса записей на основе определения отношения
public getReusableRecords (mixed $modelName, mixed $key)
Возвращает повторно используемый объект из внутреннего списка
public setReusableRecords (mixed $modelName, mixed $key, mixed $records)
Хранит многократно используемую запись во внутреннем списке
public clearReusableObjects ()
Очищает внутренний список для многократного использования
public getBelongsToRecords (mixed $method, mixed $modelName, mixed $modelRelation, Phalcon\Mvc\ModelInterface $record, [mixed $parameters])
Получает 'принадлежит' связанные записи из модели
public getHasManyRecords (mixed $method, mixed $modelName, mixed $modelRelation, Phalcon\Mvc\ModelInterface $record, [mixed $parameters])
Получает 'имеет много' связанные записи из модели
public getHasOneRecords (mixed $method, mixed $modelName, mixed $modelRelation, Phalcon\Mvc\ModelInterface $record, [mixed $parameters])
Получает 'принадлежит' связанные записи из модели
public getBelongsTo (Phalcon\Mvc\ModelInterface $model)
Возвращает все отношения 'принадлежит', определенные в модели
<?php $relations = $modelsManager->getBelongsTo( new Robots() );
public getHasMany (Phalcon\Mvc\ModelInterface $model)
Получает 'имеет много' отношения, определенные в модели
public getHasOne (Phalcon\Mvc\ModelInterface $model)
Получает 'имеет один' отношения, определенные на модели
public getHasManyToMany (Phalcon\Mvc\ModelInterface $model)
Получает 'имеет много для многих' отношения, определенные на модели
public getHasOneAndHasMany (Phalcon\Mvc\ModelInterface $model)
Получает 'имеет один' отношения, определенные на модели
public getRelations (mixed $modelName)
Запросить все отношения, определенные на модели
public getRelationsBetween (mixed $first, mixed $second)
Запросить первое соотношение между двумя моделями
public createQuery (mixed $phql)
Создает Phalcon\Mvc\Model\Query без выполнения
public executeQuery (mixed $phql, [mixed $placeholders], [mixed $types])
Создает Phalcon\Mvc\Model\Query и выполняет его
public createBuilder ([mixed $params])
Создает Phalcon\Mvc\Model\Query\Builder
public getLastQuery ()
Возвращает последний запрос, созданный или выполненный в диспетчере моделей
public registerNamespaceAlias (mixed $alias, mixed $namespaceName)
Регистрирует более короткие псевдонимы для пространств имен в операторах PHQL
public getNamespaceAlias (mixed $alias)
Возвращает реальное пространство имен из псевдонима
public getNamespaceAliases ()
Возвращает все зарегистрированные псевдонимы пространства имен
public __destruct ()
Уничтожает текущий кэш PHQL