InteractsWithPivotTable
trait InteractsWithPivotTable (View source)
Методы
| массив | toggle(mixed $ids, bool $touch = true) Переключает модель (или модели) из родительской. | |
| массив | syncWithoutDetaching(Collection|array $ids) Синхронизирует промежуточные таблицы со списком идентификаторов без отсоединения. | |
| массив | sync(Collection|Collection|array $ids, bool $detaching = true) Синхронизирует промежуточные таблицы со списком идентификаторов или коллекцией моделей. | |
| массив | formatRecordsList(array $records) Форматирует список записей синхронизации/переключения, чтобы ключи соответствовали ID. | |
| массив | attachNew(array $records, array $current, bool $touch = true) Присоединяет все записи, которые отсутствуют в заданных текущих записях. | |
| целое | updateExistingPivot(mixed $id, array $attributes, bool $touch = true) Обновляет существующую запись соединения в таблице. | |
| void | attach(mixed $id, array $attributes = [], bool $touch = true) Присоединяет модель к родительской. | |
| массив | formatAttachRecords(array $ids, array $attributes) Создает массив записей для вставки в таблицу соединения. | |
| массив | formatAttachRecord(int $key, mixed $value, array $attributes, bool $hasTimestamps) Создает полный набор данных для присоединения. | |
| массив | extractAttachIdAndAttributes(mixed $key, mixed $value, array $attributes) Получает идентификатор записи присоединения и дополнительные атрибуты. | |
| массив | baseAttachRecord(int $id, bool $timed) Создает новую запись присоединения. | |
| массив | addTimestampsToAttachment(array $record, bool $exists = false) Устанавливает метки времени создания и обновления для записи присоединения. | |
| bool | hasPivotColumn(string $column) Определяет, является ли заданный столбец столбцом соединения. | |
| целое | detach(mixed $ids = null, bool $touch = true) Отсоединяет модели от взаимосвязи. | |
| Pivot | newPivot(array $attributes = [], bool $exists = false) Создает новый экземпляр модели соединения. | |
| Pivot | newExistingPivot(array $attributes = []) Создает новый экземпляр существующей модели соединения. | |
| Builder | newPivotStatement() Получает новый обычный билдер запросов для таблицы соединения. | |
| Builder | newPivotStatementForId(mixed $id) Получает новый запрос для заданного идентификатора "другого" элемента. | |
| Builder | newPivotQuery() Создает новый билдер запросов для таблицы соединения. | |
| $this | withPivot(array|mixed $columns) Устанавливает столбцы таблицы соединения для извлечения. | |
| массив | parseIds(mixed $value) Получает все идентификаторы из заданного значения. | |
| массив | castKeys(array $keys) Преобразует заданные ключи в целые числа, если они числовые, и в строки в противном случае. | |
| mixed | castKey(mixed $key) Преобразует заданный ключ в целое число, если он числовой. | |
| массив | castAttributes(array $attributes) Преобразует заданные атрибуты соединения. |
Подробное описание
массив toggle(mixed $ids, bool $touch = true)
Переключает модель (или модели) из родительской.
Каждая существующая модель отсоединяется, а несуществующие — присоединяются.
массив syncWithoutDetaching(Collection|array $ids)
Синхронизирует промежуточные таблицы со списком идентификаторов без отсоединения.
массив sync(Collection|Collection|array $ids, bool $detaching = true)
Синхронизирует промежуточные таблицы со списком идентификаторов или коллекцией моделей.
protected массив formatRecordsList(array $records)
Форматирует список записей синхронизации/переключения, чтобы ключи соответствовали ID.
protected массив attachNew(array $records, array $current, bool $touch = true)
Присоединяет все записи, которые отсутствуют в заданных текущих записях.
целое updateExistingPivot(mixed $id, array $attributes, bool $touch = true)
Обновляет существующую запись соединения в таблице.
void attach(mixed $id, array $attributes = [], bool $touch = true)
Прикрепить модель к родителю.
protected array formatAttachRecords(array $ids, array $attributes)
Создать массив записей для вставки в сводную таблицу.
protected array formatAttachRecord(int $key, mixed $value, array $attributes, bool $hasTimestamps)
Создать полную полезную нагрузку записи прикрепления.
protected array extractAttachIdAndAttributes(mixed $key, mixed $value, array $attributes)
Получить идентификатор записи прикрепления и дополнительные атрибуты.
protected array baseAttachRecord(int $id, bool $timed)
Создать новую запись прикрепления сводной таблицы.
protected array addTimestampsToAttachment(array $record, bool $exists = false)
Установить метки времени создания и обновления для записи прикрепления.
protected bool hasPivotColumn(string $column)
Определить, определен ли заданный столбец как столбец сводной таблицы.
int detach(mixed $ids = null, bool $touch = true)
Отсоединить модели от связи.
Pivot newPivot(array $attributes = [], bool $exists = false)
Создать новый экземпляр модели сводной таблицы.
Pivot newExistingPivot(array $attributes = [])
Создать новый экземпляр существующей модели сводной таблицы.
Builder newPivotStatement()
Получить новый простой билдер запроса для сводной таблицы.
Builder newPivotStatementForId(mixed $id)
Получить новый запрос сводной таблицы для заданного идентификатора "другой" записи.
protected Builder newPivotQuery()
Создать новый билдер запросов для сводной таблицы.
$this withPivot(array|mixed $columns)
Установить столбцы в сводной таблице для извлечения.
protected array parseIds(mixed $value)
Получить все идентификаторы из заданного смешанного значения.
protected array castKeys(array $keys)
Преобразовать заданные ключи в целые числа, если они числовые, и в строки в противном случае.
protected mixed castKey(mixed $key)
Преобразовать заданный ключ в целое число, если он числовой.
protected array castAttributes(array $attributes)
Преобразовать заданные атрибуты сводной таблицы.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.5/Illuminate/Database/Eloquent/Relations/Concerns/InteractsWithPivotTable.html