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