MorphToMany
class MorphToMany extends BelongsToMany (View source)
Свойства
| InteractsWithPivotTable |
| Macroable |
Свойства
| static protected array | $macros | Зарегистрированные строковые макросы. | from Macroable |
| protected Builder | $query | Экземпляр Eloquent-билдера запросов. | from Relation |
| protected Model | $parent | Экземпляр родительской модели. | from Relation |
| protected Model | $related | Экземпляр связанной модели. | from Relation |
| static protected bool | $constraints | Указывает, добавляет ли отношение ограничения. | from Relation |
| static array | $morphMap | Массив для сопоставления имён классов с их именами морфизма в базе данных. | from Relation |
| protected string | $table | Промежуточная таблица для отношения. | from BelongsToMany |
| protected string | $foreignPivotKey | Внешний ключ родительской модели. | from BelongsToMany |
| protected string | $relatedPivotKey | Связанный ключ отношения. | from BelongsToMany |
| protected string | $parentKey | Имя ключа родительской модели. | from BelongsToMany |
| protected string | $relatedKey | Имя ключа связанной модели. | from BelongsToMany |
| protected string | $relationName | Название отношения. | from BelongsToMany |
| protected array | $pivotColumns | Столбцы промежуточной таблицы для извлечения. | from BelongsToMany |
| protected array | $pivotWheres | Любые ограничения промежуточной таблицы для where-клаузов. | from BelongsToMany |
| protected array | $pivotWhereIns | Любые ограничения промежуточной таблицы для whereIn-клаузов. | from BelongsToMany |
| protected array | $pivotValues | Значения по умолчанию для столбцов pivot. | from BelongsToMany |
| bool | $withTimestamps | Указывает, доступны ли метки времени в таблице pivot. | from BelongsToMany |
| protected string | $pivotCreatedAt | Пользовательский столбец pivot таблицы для метки времени created_at. | from BelongsToMany |
| protected string | $pivotUpdatedAt | Пользовательский столбец pivot таблицы для метки времени updated_at. | from BelongsToMany |
| protected string | $using | Имя класса пользовательской модели pivot для использования в отношении. | from BelongsToMany |
| protected string | $accessor | Имя аксессора для использования для отношения "pivot". | from BelongsToMany |
| static protected int | $selfJoinCount | Количество самосоединений. | from BelongsToMany |
| protected string | $morphType | Тип полиморфного отношения. | |
| protected string | $morphClass | Имя класса ограничения типа морфизма. | |
| protected bool | $inverse | Указывает, подключаем ли мы обратное отношение. |
Методы
| static void | macro(string $name, object|callable $macro) Зарегистрировать пользовательский макрос. | from Macroable |
| static void | mixin(object $mixin) Добавить другой объект в класс. | from Macroable |
| static bool | hasMacro(string $name) Проверить, зарегистрирован ли макрос. | from Macroable |
| static mixed | __callStatic(string $method, array $parameters) Динамически обработать вызовы к классу. | from Macroable |
| mixed | __call(string $method, array $parameters) Динамически обработать вызовы к классу. | from Macroable |
| void | __construct(Builder $query, Model $parent, string $name, string $table, string $foreignPivotKey, string $relatedPivotKey, string $parentKey, string $relatedKey, string $relationName = null, bool $inverse = false) Создать новый экземпляр отношения many-to-many с морфизмом. | |
| static mixed | noConstraints(Closure $callback) Выполнить обратный вызов без ограничений в отношении. | from Relation |
| void | addConstraints() Установить базовые ограничения для запроса отношения. | from BelongsToMany |
| void | addEagerConstraints(array $models) Установить ограничения для отложенной загрузки отношения. | |
| array | initRelation(array $models, string $relation) Инициализировать отношение для набора моделей. | from BelongsToMany |
| array | match(array $models, Collection $results, string $relation) Сопоставить загруженные результаты с их родительскими элементами. | from BelongsToMany |
| mixed | getResults() Получить результаты отношения. | from BelongsToMany |
| Collection | getEager() Получить отношение для отложенной загрузки. | from Relation |
| Collection | get(array $columns = ['*']) Выполнить запрос как операцию «select». | from BelongsToMany |
| void | touch() Обновить все связанные модели для отношения. | from BelongsToMany |
| int | rawUpdate(array $attributes = []) Выполнить прямое обновление базы данных. | from Relation |
| Builder | getRelationExistenceCountQuery(Builder $query, Builder $parentQuery) Добавить ограничения для запроса подсчета отношений. | from Relation |
| Builder | getRelationExistenceQuery(Builder $query, Builder $parentQuery, array|mixed $columns = ['*']) Добавить ограничения для запроса подсчета отношений. | |
| array | getKeys(array $models, string $key = null) Получить все первичные ключи для массива моделей. | from Relation |
| Builder | getQuery() Получить базовый запрос для отношения. | from Relation |
| Builder | getBaseQuery() Получить базовый билдер запроса, используемый Eloquent билдером. | from Relation |
| Model | getParent() Получить родительскую модель отношения. | from Relation |
| string | getQualifiedParentKeyName() Получить полное имя родительского ключа для отношения. | from BelongsToMany |
| Model | getRelated() Получить связанную модель отношения. | from Relation |
| string | createdAt() Получить имя колонки «created_at». | from BelongsToMany |
| string | updatedAt() Получить имя колонки «updated_at». | from BelongsToMany |
| string | relatedUpdatedAt() Получить имя колонки «updated_at» связанной модели. | from Relation |
| static array | morphMap(array $map = null, bool $merge = true) Установить или получить карту морфизма для полиморфных отношений. | from Relation |
| static array|null | buildMorphMapFromModels(array $models = null) Создает таблично-ключевой массив из имен классов моделей. | from Relation |
| статический string|null | getMorphedModel(string $alias) Получить модель, связанную с пользовательским полиморфным типом. | из Relation |
| void | __clone() Принудительно клонировать базовый билдер запросов при клонировании. | из Relation |
| массив | toggle(mixed $ids, bool $touch = true) Переключает модель (или модели) от родительской. | из InteractsWithPivotTable |
| массив | syncWithoutDetaching(Collection|Collection|array $ids) Синхронизировать промежуточные таблицы со списком идентификаторов без отсоединения. | из InteractsWithPivotTable |
| массив | sync(Collection|Collection|array $ids, bool $detaching = true) Синхронизировать промежуточные таблицы со списком идентификаторов или коллекцией моделей. | из InteractsWithPivotTable |
| массив | formatRecordsList(array $records) Форматировать список записей синхронизации/переключения так, чтобы он индексировался по идентификатору. | из InteractsWithPivotTable |
| массив | attachNew(array $records, array $current, bool $touch = true) Присоединить все записи, которых нет в заданных текущих записях. | из InteractsWithPivotTable |
| int | updateExistingPivot(mixed $id, array $attributes, bool $touch = true) Обновить существующую запись-связь в таблице. | из InteractsWithPivotTable |
| void | attach(mixed $id, array $attributes = [], bool $touch = true) Присоединить модель к родительской. | из InteractsWithPivotTable |
| массив | formatAttachRecords(array $ids, array $attributes) Создать массив записей для вставки в таблицу связей. | из InteractsWithPivotTable |
| массив | formatAttachRecord(int $key, mixed $value, array $attributes, bool $hasTimestamps) Создать полную полезную нагрузку записи присоединения. | из InteractsWithPivotTable |
| массив | extractAttachIdAndAttributes(mixed $key, mixed $value, array $attributes) Получить идентификатор и дополнительные атрибуты записи присоединения. | из InteractsWithPivotTable |
| массив | baseAttachRecord(int $id, bool $timed) Создать новую запись присоединения-связи. | |
| массив | addTimestampsToAttachment(array $record, bool $exists = false) Установить метки создания и обновления для записи присоединения. | из InteractsWithPivotTable |
| bool | hasPivotColumn(string $column) Определить, определён ли заданный столбец как столбец связи. | из InteractsWithPivotTable |
| int | detach(mixed $ids = null, bool $touch = true) Отсоединить модели от отношения. | из InteractsWithPivotTable |
| Pivot | newPivot(array $attributes = [], bool $exists = false) Создать новый экземпляр модели-связи. | |
| Pivot | newExistingPivot(array $attributes = []) Создать новый экземпляр существующей модели-связи. | из InteractsWithPivotTable |
| Builder | newPivotStatement() Получить новый обычный билдер запросов для таблицы связей. | из InteractsWithPivotTable |
| Builder | newPivotStatementForId(mixed $id) Получить новый запрос для связи по заданному идентификатору. | из InteractsWithPivotTable |
| Builder | newPivotQuery() Создать новый билдер запросов для таблицы связей. | |
| $this | withPivot(array|mixed $columns) Установить столбцы в таблице связей для извлечения. | из InteractsWithPivotTable |
| массив | parseIds(mixed $value) Получить все идентификаторы из заданного значения. | из InteractsWithPivotTable |
| mixed | parseId(mixed $value) Получить идентификатор из заданного значения. | из InteractsWithPivotTable |
| массив | castKeys(array $keys) Преобразовать заданные ключи в целые числа, если они числовые, и в строки в противном случае. | из InteractsWithPivotTable |
| mixed | castKey(mixed $key) Преобразовать заданный ключ в целое число, если он числовой. | из InteractsWithPivotTable |
| array | castAttributes(array $attributes) Преобразовать заданные атрибуты pivot. | from InteractsWithPivotTable |
| $this | performJoin(Builder|null $query = null) Установить условие соединения для запроса отношения. | from BelongsToMany |
| $this | addWhereConstraints() Установить условие where для запроса отношения. | |
| array | buildDictionary(Collection $results) Построить словарь моделей с ключом, представляющим собой внешний ключ отношения. | from BelongsToMany |
| string | getPivotClass() Получить класс, используемый для pivot-моделей. | from BelongsToMany |
| BelongsToMany | using(string $class) Указать пользовательскую pivot-модель для использования в отношении. | from BelongsToMany |
| BelongsToMany | as(string $accessor) Указать пользовательский pivot-аксессор для использования в отношении. | from BelongsToMany |
| BelongsToMany | wherePivot(string $column, string $operator = null, mixed $value = null, string $boolean = 'and') Установить условие where для столбца таблицы pivot. | from BelongsToMany |
| BelongsToMany | wherePivotIn(string $column, mixed $values, string $boolean = 'and', bool $not = false) Установить условие "where in" для столбца таблицы pivot. | from BelongsToMany |
| BelongsToMany | orWherePivot(string $column, string $operator = null, mixed $value = null) Установить условие "or where" для столбца таблицы pivot. | from BelongsToMany |
| BelongsToMany | withPivotValue(string $column, mixed $value = null) Установить условие where для столбца таблицы pivot. | from BelongsToMany |
| BelongsToMany | orWherePivotIn(string $column, mixed $values) Установить условие "or where in" для столбца таблицы pivot. | from BelongsToMany |
| Collection|Model | findOrNew(mixed $id, array $columns = ['*']) Найти связанную модель по её первичному ключу или вернуть новый экземпляр связанной модели. | from BelongsToMany |
| Model | firstOrNew(array $attributes) Получить первую запись связанной модели, соответствующую атрибутам, или создать её. | from BelongsToMany |
| Model | firstOrCreate(array $attributes, array $joining = [], bool $touch = true) Получить первую связанную запись, соответствующую атрибутам, или создать её. | from BelongsToMany |
| Model | updateOrCreate(array $attributes, array $values = [], array $joining = [], bool $touch = true) Создать или обновить связанную запись, соответствующую атрибутам, и заполнить её значениями. | from BelongsToMany |
| Model|Collection|null | find(mixed $id, array $columns = ['*']) Найти связанную модель по её первичному ключу. | from BelongsToMany |
| Collection | findMany(mixed $ids, array $columns = ['*']) Найти несколько связанных моделей по их первичным ключам. | from BelongsToMany |
| Model|Collection | findOrFail(mixed $id, array $columns = ['*']) Найти связанную модель по её первичному ключу или выбросить исключение. | from BelongsToMany |
| mixed | first(array $columns = ['*']) Выполнить запрос и получить первый результат. | from BelongsToMany |
| Model|BelongsToMany | firstOrFail(array $columns = ['*']) Выполнить запрос и получить первый результат или выбросить исключение. | from BelongsToMany |
| BelongsToMany | shouldSelect(array $columns = ['*']) Получить столбцы select для запроса отношения. | from BelongsToMany |
| array | aliasedPivotColumns() Получить столбцы pivot для отношения. | |
| LengthAwarePaginator | paginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null) Получить пагинатор для оператора "select". | from BelongsToMany |
| Paginator | simplePaginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null) Разбить заданный запрос на простую страницу. | from BelongsToMany |
| bool | chunk(int $count, callable $callback) Разбить результаты запроса на куски. | from BelongsToMany |
| void | hydratePivotRelation(array $models) Загрузить отношение связующей таблицы для моделей. | from BelongsToMany |
| array | migratePivotAttributes(Model $model) Получить атрибуты связующей таблицы из модели. | from BelongsToMany |
| void | touchIfTouching() Если мы обновляем родительскую модель, обновить её метку времени. | from BelongsToMany |
| bool | touchingParent() Определить, нужно ли обновить метку времени родительской модели при синхронизации. | from BelongsToMany |
| string | guessInverseRelation() Попытка угадать имя обратного отношения. | from BelongsToMany |
| Collection | allRelatedIds() Получить все идентификаторы связанных моделей. | from BelongsToMany |
| Model | save(Model $model, array $pivotAttributes = [], bool $touch = true) Сохранить новую модель и привязать её к родительской модели. | from BelongsToMany |
| array | saveMany(Collection|array $models, array $pivotAttributes = []) Сохранить массив новых моделей и привязать их к родительской модели. | from BelongsToMany |
| Model | create(array $attributes = [], array $joining = [], bool $touch = true) Создать новый экземпляр связанной модели. | from BelongsToMany |
| array | createMany(array $records, array $joinings = []) Создать массив новых экземпляров связанных моделей. | from BelongsToMany |
| Builder | getRelationExistenceQueryForSelfJoin(Builder $query, Builder $parentQuery, array|mixed $columns = ['*']) Добавить ограничения для запроса отношения на том же столе. | from BelongsToMany |
| string | getExistenceCompareKey() Получить ключ для сравнения с ключом родительской модели в запросе "has". | from BelongsToMany |
| string | getRelationCountHash() Получить хеш для связующей таблицы отношения. | from BelongsToMany |
| BelongsToMany | withTimestamps(mixed $createdAt = null, mixed $updatedAt = null) Указать, что связующая таблица имеет метки времени создания и обновления. | from BelongsToMany |
| string | getForeignPivotKeyName() Получить внешний ключ для отношения. | from BelongsToMany |
| string | getQualifiedForeignPivotKeyName() Получить полностью квалифицированный внешний ключ для отношения. | from BelongsToMany |
| string | getRelatedPivotKeyName() Получить "связанный ключ" для отношения. | from BelongsToMany |
| string | getQualifiedRelatedPivotKeyName() Получить полностью квалифицированный "связанный ключ" для отношения. | from BelongsToMany |
| string | getTable() Получить промежуточную таблицу для отношения. | from BelongsToMany |
| string | getRelationName() Получить имя отношения для отношения. | from BelongsToMany |
| string | getPivotAccessor() Получить имя аксессора для связующей таблицы этого отношения. | from BelongsToMany |
| string | getMorphType() Получить имя внешнего ключа "типа". | |
| string | getMorphClass() Получить имя класса родительской модели. |
Подробности
static void macro(string $name, object|callable $macro)
Зарегистрировать пользовательское макрос.
static void mixin(object $mixin)
Включить другой объект в класс.
static bool hasMacro(string $name)
Проверяет, зарегистрирован ли макрос.
static mixed __callStatic(string $method, array $parameters)
Динамическая обработка вызовов класса.
mixed __call(string $method, array $parameters)
Динамическая обработка вызовов класса.
void __construct(Builder $query, Model $parent, string $name, string $table, string $foreignPivotKey, string $relatedPivotKey, string $parentKey, string $relatedKey, string $relationName = null, bool $inverse = false)
Создание нового экземпляра связи many-to-many через morph.
static mixed noConstraints(Closure $callback)
Выполнение обратного вызова без ограничений связи.
void addConstraints()
Устанавливает базовые ограничения для запроса связи.
void addEagerConstraints(array $models)
Установка ограничений для отложенной загрузки связи.
array initRelation(array $models, string $relation)
Инициализация связи для набора моделей.
array match(array $models, Collection $results, string $relation)
Сопоставление результатов отложенной загрузки с родительскими моделями.
mixed getResults()
Получить результаты связи.
Collection getEager()
Получение связи для отложенной загрузки.
Collection get(array $columns = ['*'])
Выполнение запроса как оператора «select».
void touch()
Обновление времени последнего изменения для всех связанных моделей.
Например: Обновление времени последнего изменения для всех ролей, связанных с этим пользователем.
int rawUpdate(array $attributes = [])
Выполнение оператора raw update для основного запроса.
Builder getRelationExistenceCountQuery(Builder $query, Builder $parentQuery)
Добавление ограничений для запроса подсчета существования связи.
Builder getRelationExistenceQuery(Builder $query, Builder $parentQuery, array|mixed $columns = ['*'])
Добавление ограничений для запроса подсчета существования связи.
protected array getKeys(array $models, string $key = null)
Получение всех первичных ключей для массива моделей.
Блокер getQuery()
Получить базовое запрошенное соединение для связи.
Блокер getBaseQuery()
Получить базовый конструктор запроса, управляющий конструктором Eloquent.
Модель getParent()
Получить родительскую модель связи.
строка getQualifiedParentKeyName()
Получить полное квалифицированное имя родительского ключа для связи.
Модель getRelated()
Получить связанную модель связи.
строка createdAt()
Получить имя столбца "создано в".
строка updatedAt()
Получить имя столбца "обновлено в".
строка relatedUpdatedAt()
Получить имя столбца "обновлено в" связанной модели.
static массив morphMap(array $map = null, bool $merge = true)
Установить или получить карту морфинга для полиморфных связей.
static protected массив|null buildMorphMapFromModels(array $models = null)
Создаёт таблично-индексированный массив из имён классов моделей.
static строка|null getMorphedModel(string $alias)
Получить модель, связанную с типом пользовательской полиморфной связи.
пусто __clone()
Принудительно клонировать базовый конструктор запроса при клонировании.
массив toggle(mixed $ids, bool $touch = true)
Переключает модель (или модели) из родителя.
Каждая существующая модель отделяется, а не существующая — присоединяется.
массив syncWithoutDetaching(Коллекция|Коллекция|массив $ids)
Синхронизировать промежуточные таблицы со списком идентификаторов без отсоединения.
массив sync(Коллекция|Коллекция|массив $ids, bool $detaching = true)
Синхронизировать промежуточные таблицы со списком идентификаторов или коллекцией моделей.
protected массив formatRecordsList(array $records)
Отформатировать список записей синхронизации/переключения таким образом, чтобы он индексировался по идентификатору.
protected массив attachNew(array $records, array $current, bool $touch = true)
Присоединить все записи, которые не находятся в заданных текущих записях.
целое число updateExistingPivot(mixed $id, array $attributes, bool $touch = true)
Обновить существующую запись поворота в таблице.
пусто attach(mixed $id, array $attributes = [], bool $touch = true)
Присоединить модель к родителю.
protected массив formatAttachRecords(array $ids, array $attributes)
Создать массив записей для вставки в таблицу поворота.
protected массив 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 mixed parseId(mixed $value)
Получить идентификатор из заданного смешанного значения.
protected array castKeys(array $keys)
Преобразовать заданные ключи в целые числа, если они являются числовыми, и в строки в противном случае.
protected mixed castKey(mixed $key)
Преобразовать заданный ключ в целое число, если он является числовым.
protected array castAttributes(array $attributes)
Преобразовать заданные атрибуты присоединения.
protected $this performJoin(Builder|null $query = null)
Установить условие соединения для запроса отношения.
protected $this addWhereConstraints()
Установить условие where для запроса отношения.
protected array buildDictionary(Collection $results)
Создать словарь моделей, индексированный по внешнему ключу отношения.
string getPivotClass()
Получить класс, используемый для моделей присоединения.
BelongsToMany using(string $class)
Указать пользовательскую модель присоединения для использования в отношении.
BelongsToMany as(string $accessor)
Укажите пользовательский аксессор для использования в связи.
BelongsToMany wherePivot(string $column, string $operator = null, mixed $value = null, string $boolean = 'and')
Установите условие where для столбца таблицы связи.
BelongsToMany wherePivotIn(string $column, mixed $values, string $boolean = 'and', bool $not = false)
Установите условие «where in» для столбца таблицы связи.
BelongsToMany orWherePivot(string $column, string $operator = null, mixed $value = null)
Установите условие «or where» для столбца таблицы связи.
BelongsToMany withPivotValue(string $column, mixed $value = null)
Установите условие where для столбца таблицы связи.
Кроме того, новые записи pivot получат это значение.
BelongsToMany orWherePivotIn(string $column, mixed $values)
Установите условие «or where in» для столбца таблицы связи.
Collection|Model findOrNew(mixed $id, array $columns = ['*'])
Найти связанную модель по её первичному ключу или вернуть новую модель.
Model firstOrNew(array $attributes)
Получить первую связанную модель, соответствующую атрибутам, или создать её экземпляр.
Model firstOrCreate(array $attributes, array $joining = [], bool $touch = true)
Получить первую связанную запись, соответствующую атрибутам, или создать её.
Model updateOrCreate(array $attributes, array $values = [], array $joining = [], bool $touch = true)
Создать или обновить связанную запись, соответствующую атрибутам, и заполнить её значениями.
Model|Collection|null find(mixed $id, array $columns = ['*'])
Найти связанную модель по её первичному ключу.
Collection findMany(mixed $ids, array $columns = ['*'])
Найти несколько связанных моделей по их первичным ключам.
Model|Collection findOrFail(mixed $id, array $columns = ['*'])
Найти связанную модель по её первичному ключу или выбросить исключение.
смешанный тип first(array $columns = ['*'])
Выполнить запрос и получить первый результат.
Модель|BelongsToMany firstOrFail(array $columns = ['*'])
Выполнить запрос и получить первый результат или выбросить исключение.
protected BelongsToMany shouldSelect(array $columns = ['*'])
Получить столбцы для выбора в запросе отношения.
protected array aliasedPivotColumns()
Получить столбцы моста для отношения.
"pivot_" добавляется к каждому столбцу для лёгкого удаления позже.
LengthAwarePaginator paginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null)
Получить разбиение для запроса "select".
Paginator simplePaginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null)
Разбить заданный запрос на страницы с помощью простого разбиения.
bool chunk(int $count, callable $callback)
Разбить результаты запроса на куски.
protected void hydratePivotRelation(array $models)
Заполнить отношение моста в моделях.
protected array migratePivotAttributes(Модель $model)
Получить атрибуты моста из модели.
void touchIfTouching()
Если нужно обновить родительскую модель, обновить.
protected bool touchingParent()
Определить, нужно ли обновлять родительскую модель при синхронизации.
protected string guessInverseRelation()
Попытаться угадать имя обратного отношения.
Collection allRelatedIds()
Получить все идентификаторы для связанных моделей.
Модель save(Модель $model, array $pivotAttributes = [], bool $touch = true)
Сохранить новую модель и прикрепить её к родительской модели.
array saveMany(Collection|array $models, array $pivotAttributes = [])
Сохранить массив новых моделей и прикрепить их к родительской модели.
Модель create(array $attributes = [], array $joining = [], bool $touch = true)
Создать новый экземпляр связанной модели.
array createMany(array $records, array $joinings = [])
Создать массив новых экземпляров связанных моделей.
Builder getRelationExistenceQueryForSelfJoin(Builder $query, Builder $parentQuery, array|mixed $columns = ['*'])
Добавить ограничения для запроса отношения на одном и том же столе.
string getExistenceCompareKey()
Получить ключ для сравнения с родительским ключом в запросе «has».
string getRelationCountHash()
Получить хеш таблицы соединения отношений.
BelongsToMany withTimestamps(mixed $createdAt = null, mixed $updatedAt = null)
Указать, что таблица связей содержит метки времени создания и обновления.
string getForeignPivotKeyName()
Получить внешний ключ для отношения.
string getQualifiedForeignPivotKeyName()
Получить полностью квалифицированный внешний ключ для отношения.
string getRelatedPivotKeyName()
Получить «связанный ключ» для отношения.
string getQualifiedRelatedPivotKeyName()
Получить полностью квалифицированный «связанный ключ» для отношения.
string getTable()
Получить промежуточную таблицу для отношения.
string getRelationName()
Получить имя отношения для отношения.
string getPivotAccessor()
Получить имя аксессора pivot для этого отношения.
string getMorphType()
Получить имя внешнего ключа «тип».
string getMorphClass()
Получить имя класса родительской модели.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.6/Illuminate/Database/Eloquent/Relations/MorphToMany.html