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) Создает полную запись прикрепления. | |
| массив | 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) Отсоединяет модели от отношения. | |
| целое число | 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) Получает все идентификаторы из данного смешанного значения. | |
| смешанное | parseId(mixed $value) Получает идентификатор из данного смешанного значения. | |
| массив | castKeys(array $keys) Преобразует заданные ключи в целые числа, если они числовые, и в строки в противном случае. | |
| смешанное | castKey(mixed $key) Преобразует заданный ключ в тип первичного ключа. | |
| массив | castAttributes(array $attributes) Преобразует заданные атрибуты связующей таблицы. | |
| смешанное | getTypeSwapValue(string $type, mixed $value) Преобразует заданное значение в значение заданного типа. |
Подробности
массив toggle(mixed $ids, bool $touch = true)
Переключает модель (или модели) от родителя.
Каждая существующая модель отсоединяется, а несуществующие — присоединяются.
syncWithoutDetaching(Collection|Model|array $ids)
Синхронизирует промежуточные таблицы со списком идентификаторов без отсоединения.
sync(Collection|Model|array $ids, bool $detaching = true)
Синхронизирует промежуточные таблицы со списком идентификаторов или коллекцией моделей.
syncWithPivotValues(Collection|Модель|array $ids, array $values, bool $detaching = true)
Синхронизирует промежуточные таблицы со списком идентификаторов или коллекцией моделей с заданными значениями связующей таблицы.
protected array formatRecordsList(array $records)
Форматирует список записей синхронизации/переключения так, чтобы он индексировался по идентификатору.
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 Коллекция getCurrentlyAttachedPivots()
Получает модели связующей таблицы, которые в данный момент присоединены.
Связь newPivot(array $attributes = [], bool $exists = false)
Создаёт новый экземпляр модели связующей таблицы.
Связь 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/11.x/Illuminate/Database/Eloquent/Relations/Concerns/InteractsWithPivotTable.html