Spec-Zone.ru › CakePHP 3.4

Интерфейс RepositoryInterface

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

Непосредственные реализаторы

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

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

  • alias() public
    Возвращает псевдоним таблицы или устанавливает новый
  • 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

alias( string|null $alias null )

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

Устаревшее

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

Параметры

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

Возвращает

string

delete()source public

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

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

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

Параметры

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

Возвращает

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 [] )

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

Событие Model.beforeFind

Каждый вызов find() будет вызывать событие Model.beforeFind для всех подключённых слушателей. Любой слушатель может установить корректный набор результатов, используя $query

Параметры

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

Возвращает

Cake\ORM\Query

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 необязательно []
опции, принимаемые 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 необязательно []
Список опций для гидратации объектов.

Возвращает

array
Массив полученных записей.

newEntity()source public

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

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

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

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

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

Параметры

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

Возвращает

Cake\Datasource\EntityInterface

patchEntities()source public

patchEntities( array|Traversable $entities , array $data , array $options [] )

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

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

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

Параметры

array|Traversable $entities

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

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

Возвращает

array

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

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

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

Возвращает

Cake\Datasource\EntityInterface

query()source public

query( )

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

Возвращает

Cake\ORM\Query

save()source public

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

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

Параметры

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

Возвращает

Cake\Datasource\EntityInterface|boolean

updateAll()source public

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

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

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

Параметры

string|array|callable|Cake\Database\Expression\QueryExpression $fields
Хэш полей => нового значения.
mixed $conditions

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

Возвращает

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

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

getAlias()source public

getAlias( )

Возвращает

string

© 2005–2017 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.4/class-Cake.Datasource.RepositoryInterface.html

Spec-Zone.ru

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