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