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