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