Spec-Zone.ru › CakePHP 3.7

Интерфейс RepositoryInterface

Описывает методы, которым должен соответствовать любой класс, представляющий хранилище данных.

Прямые реализаторы

  • Cake\ORM\Table
Пространство имён: Cake\Datasource
Расположение: Datasource/RepositoryInterface.php

Краткое описание методов

  • alias() public deprecated
    Возвращает псевдоним таблицы или задаёт новый
  • delete() public
    Удаляет единственную сущность.
  • deleteAll() public
    Удаляет все записи, соответствующие заданным условиям.
  • exists() public

    Возвращает true, если в этом репозитории есть хотя бы одна запись, соответствующая указанным условиям.

  • find() public

    Создаёт новый запрос для этого репозитория и применяет некоторые значения по умолчанию, основанные на типе выбранного поиска.

  • get() public

    Возвращает единственную запись после её поиска по первичному ключу. Если запись не найдена, этот метод генерирует исключение.

  • hasField() public
    Проверяет наличие определённого поля/столбца в репозитории.
  • newEntities() public
    Создаёт список сущностей + связанных сущностей из массива.
  • newEntity() public
    Создаёт новую сущность + связанные сущности из массива.
  • patchEntities() public

    Объединяет каждый из переданных элементов $data в сущности, найденные в $entities, учитывая доступные поля, настроенные в сущностях. Объединение выполняется путём сопоставления первичного ключа в каждом из элементов в $data и $entities.

  • patchEntity() public

    Объединяет переданный $data в $entity, учитывая доступные поля, настроенные в сущности. Возвращает ту же сущность после изменения.

  • query() public
    Создаёт новый экземпляр Query для данного репозитория
  • save() public

    Сохраняет сущность на основе полей, помеченных как изменённые, и возвращает ту же сущность после успешного сохранения или false в случае ошибки.

  • updateAll() public
    Обновляет все соответствующие записи.

Подробное описание методов

alias()source public deprecated

alias( string|null $alias = null )

Возвращает псевдоним таблицы или задаёт новый

Устарело

3.4.0 Используйте setAlias()/getAlias() вместо этого.

Параметры

string|null $alias optional null
новый псевдоним таблицы

Возвращает

string

delete()source public

delete( Cake\Datasource\EntityInterface $entity , array|ArrayAccess $options = [] )

Удаляет единственную сущность.

Удаляет сущность и, возможно, связанные ассоциации из базы данных, основываясь на опции 'dependent', используемой при определении ассоциации.

Параметры

Cake\Datasource\EntityInterface $entity
Сущность для удаления.
array|ArrayAccess $options optional []
Опции для удаления.

Возвращает

boolean
успех

deleteAll()source public

deleteAll( mixed $conditions )

Удаляет все записи, соответствующие заданным условиям.

Этот метод не будет вызывать события beforeDelete/afterDelete. Если вам нужны эти события, сначала загрузите коллекцию записей и удалите их.

Этот метод не будет выполняться для атрибута cascade ассоциаций. Для каскадного удаления используйте внешние ключи базы данных + правила ON CASCADE в сочетании с этим методом.

Параметры

mixed $conditions

Условия, принимающие всё, что может принять Query::where().

Возвращает

integer
Возвращает количество затронутых строк.

См. также

\Cake\Datasource\RepositoryInterface::delete()

exists()source public

exists( array|ArrayAccess $conditions )

Возвращает true, если в этом репозитории есть хотя бы одна запись, соответствующая указанным условиям.

Параметры

array|ArrayAccess $conditions
список условий для передачи в запрос

Возвращает

boolean

find()source public

find( string $type = 'all' , array|ArrayAccess $options = [] )

Создаёт новый запрос для этого репозитория и применяет некоторые значения по умолчанию, основанные на типе выбранного поиска.

Параметры

string $type optional 'all'
тип запроса для выполнения
array|ArrayAccess $options optional []
Массив, который будет передан в Query::applyOptions()

Возвращает

Cake\Datasource\QueryInterface

get()source public

get( mixed $primaryKey , array|ArrayAccess $options = [] )

Возвращает единственную запись после её поиска по первичному ключу. Если запись не найдена, этот метод генерирует исключение.

Пример:

$id = 10;
$article = $articles->get($id);

$article = $articles->get($id, ['contain' => ['Comments]]);

Параметры

mixed $primaryKey
значение первичного ключа для поиска
array|ArrayAccess $options optional []
опции, принимаемые Table::find()

Возвращает

Cake\Datasource\EntityInterface

Исключения

Cake\Datasource\Exception\RecordNotFoundException

если запись с таким ID не была найдена


См. также

\Cake\Datasource\RepositoryInterface::find()

hasField()source public

hasField( string $field )

Проверяет наличие определённого поля/столбца в репозитории.

Параметры

string $field
Проверяемое поле.

Возвращает

boolean
True, если поле существует; false, если нет.

newEntities()source public

newEntities( array $data , array $options = [] )

Создаёт список сущностей + связанных сущностей из массива.

Это наиболее полезно при гидратации данных запроса обратно в сущности. Например, в вашем коде контроллера:

$articles = $this->Articles->newEntities($this->request->getData());

Полученные сущности могут быть затем итерированы и сохранены.

Параметры

array $data
Данные для создания сущности.
array $options optional []
Список опций для гидратации объектов.

Возвращает

Cake\Datasource\EntityInterface[]
Массив гидратированных записей.

newEntity()source public

newEntity( array|null $data = null , array $options = [] )

Создаёт новую сущность + связанные сущности из массива.

Это наиболее полезно при гидратации данных запроса обратно в сущности. Например, в вашем коде контроллера:

$article = $this->Articles->newEntity($this->request->getData());

Гидратированная сущность правильно выполнит вставку/обновление, основываясь на данных первичного ключа, существующих в базе данных, при сохранении сущности. До сохранения сущности, она будет отсоединённой записью.

Параметры

array|null $data optional null
Данные для создания сущности.
array $options optional []
Список опций для гидратации объекта.

Возвращает

Cake\Datasource\EntityInterface
END_OF_DOCUMENT_MARKER

patchEntities()source public

patchEntities( Cake\Datasource\EntityInterface[]|Traversable $entities , array $data , array $options = [] )

Объединяет каждый из переданных элементов $data в сущности, найденные в $entities, соблюдая конфигурированные доступные поля в сущностях. Объединение выполняется путем сопоставления первичного ключа в каждом элементе в $data и $entities.

Это наиболее полезно при редактировании списка существующих сущностей с использованием данных запроса:

$article = $this->Articles->patchEntities($articles, $this->request->getData());

Параметры

Cake\Datasource\EntityInterface[]|Проходимая коллекция $entities

сущности, в которые будут добавлены данные

массив $data
список массивов, которые будут объединены в сущности
массив $options необязательно []
Список параметров для гидратации объектов.

Возвращает

Cake\Datasource\EntityInterface[]

patchEntity()source public

patchEntity( Cake\Datasource\EntityInterface $entity , array $data , array $options = [] )

Объединяет переданные $data в $entity, соблюдая конфигурированные доступные поля в сущности. Возвращает ту же сущность после изменения.

Это наиболее полезно при редактировании существующей сущности с использованием данных запроса:

$article = $this->Articles->patchEntity($article, $this->request->getData());

Параметры

Cake\Datasource\EntityInterface $entity

сущность, в которую будут добавлены данные

массив $data
список пар «ключ-значение» полей, которые будут объединены в сущность
массив $options необязательно []
Список параметров для гидратации объекта.

Возвращает

Cake\Datasource\EntityInterface

query()source public

query( )

Создаёт новый экземпляр запроса для данного репозитория

Возвращает

Cake\Datasource\QueryInterface

save()source public

save( Cake\Datasource\EntityInterface $entity , array|ArrayAccess $options = [] )

Сохраняет сущность, основываясь на полях, помеченных как изменённые, и возвращает ту же сущность после успешного сохранения или false в случае ошибки.

Параметры

Cake\Datasource\EntityInterface $entity
сущность, подлежащая сохранению
массив|ArrayAccess $options необязательно []
Параметры для сохранения.

Возвращает

Cake\Datasource\EntityInterface|false

updateAll()source public

updateAll( string|array|callable|Cake\Database\Expression\QueryExpression $fields , mixed $conditions )

Обновить все соответствующие записи.

Устанавливает $fields в предоставленные значения на основе $conditions. Этот метод не запускает события beforeSave/afterSave. Если вам нужны эти события, сначала загрузите коллекцию записей и обновите их.

Параметры

строка|массив|вызов|Cake\Database\Expression\QueryExpression $fields
Хэш поля => новое значение.
смешанное $conditions

Условие, которое используется, допускает все, что может принять Query::where().

Возвращает

целое число
Количество затронутых строк.

Краткое описание магических методов

getAlias()source public

getAlias( )

Возвращает

строка

getRegistryAlias()source public

getRegistryAlias( )

Возвращает

строка

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.7/class-Cake.Datasource.RepositoryInterface.html

Spec-Zone.ru

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