Spec-Zone.ru › Laravel 6

MorphToMany

класс MorphToMany расширяет BelongsToMany (Просмотреть исходный код)

Трейты

InteractsWithPivotTable
ForwardsCalls
Macroable

Свойства

статический защищённый массив $macros

Зарегистрированные строковые макросы.

из Macroable
защищённый Builder $query

Экземпляр билдера запросов Eloquent.

из Relation
защищённый Model $parent

Экземпляр родительской модели.

из Relation
защищённый Model $related

Экземпляр связанной модели.

из Relation
статический защищённый bool $constraints

Указывает, добавляет ли отношение ограничения.

из Relation
статический массив $morphMap

Массив для сопоставления имён классов с их именами морф в базе данных.

из Relation
защищённый string $table

Промежуточная таблица для отношения.

из BelongsToMany
защищённый string $foreignPivotKey

Внешний ключ родительской модели.

из BelongsToMany
защищённый string $relatedPivotKey

Связанный ключ отношения.

из BelongsToMany
защищённый string $parentKey

Имя ключа родительской модели.

из BelongsToMany
защищённый string $relatedKey

Имя ключа связанной модели.

из BelongsToMany
защищённый string $relationName

«Имя» отношения.

из BelongsToMany
защищённый массив $pivotColumns

Столбцы таблицы связей для извлечения.

из BelongsToMany
защищённый массив $pivotWheres

Любые ограничения таблицы связей для where-запросов.

из BelongsToMany
защищённый массив $pivotWhereIns

Любые ограничения таблицы связей для whereIn-запросов.

из BelongsToMany
защищённый массив $pivotValues

Значения по умолчанию для столбцов таблицы связей.

из BelongsToMany
bool $withTimestamps

Указывает, доступны ли метки времени в таблице связей.

из BelongsToMany
защищённый string $pivotCreatedAt

Пользовательский столбец таблицы связей для метки времени created_at.

из BelongsToMany
protected string $pivotUpdatedAt

Столбец пользовательской сводной таблицы для метки времени updated_at.

from BelongsToMany
protected string $using

Имя класса пользовательской модели сводной таблицы для использования в связи.

from BelongsToMany
protected string $accessor

Имя аксессора для использования в связи "pivot".

from BelongsToMany
static protected int $selfJoinCount

Количество самосоединений.

from 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, bool $replace = true)

Смешать другой объект в класс.

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()

Получить отношение для ленивой загрузки.

из Отношения
Коллекция get(array $columns = ['*'])

Выполнить запрос в качестве оператора «select».

из Связь "многие ко многим"
void touch()

Обновить все связанные модели для отношения.

из Связь "многие ко многим"
int rawUpdate(array $attributes = [])

Выполнить сырое обновление по основному запросу.

из Отношения
Билдер getRelationExistenceCountQuery(Билдер $query, Билдер $parentQuery)

Добавить ограничения для запроса подсчёта существования отношения.

из Отношения
Билдер getRelationExistenceQuery(Билдер $query, Билдер $parentQuery, array|mixed $columns = ['*'])

Добавить ограничения для запроса подсчёта существования отношения.

array getKeys(array $models, string $key = null)

Получить все первичные ключи для массива моделей.

из Отношения
Билдер getQuery()

Получить базовый запрос для отношения.

из Отношения
Билдер getBaseQuery()

Получить базовый билдер запроса, управляющий билдером Eloquent.

из Отношения
Модель getParent()

Получить родительскую модель отношения.

из Отношения
string getQualifiedParentKeyName()

Получить полностью квалифицированное имя родительского ключа для отношения.

из Связь "многие ко многим"
Модель getRelated()

Получить связанную модель отношения.

из Отношения
string createdAt()

Получить имя столбца «создано в».

из Связь "многие ко многим"
string updatedAt()

Получить имя столбца «обновлено в».

из Связь "многие ко многим"
string relatedUpdatedAt()

Получить имя столбца "updated at" связанной модели.

from Relation
string whereInMethod(Model $model, string $key)

Получить имя метода "where in" для леничной загрузки.

from Relation
static array morphMap(array $map = null, bool $merge = true)

Установить или получить морф-отображение для полиморфных отношений.

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|Model|array $ids)

Синхронизирует промежуточные таблицы со списком идентификаторов без отсоединения.

from InteractsWithPivotTable
array sync(Collection|Model|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
int updateExistingPivotUsingCustomClass(mixed $id, array $attributes, bool $touch)

Обновить существующую запись связи в таблице через пользовательский класс.

from InteractsWithPivotTable
void attach(mixed $id, array $attributes = [], bool $touch = true)

Присоединить модель к родительской.

from InteractsWithPivotTable
void attachUsingCustomClass(mixed $id, array $attributes)

Присоединить модель к родительской используя пользовательский класс.

from InteractsWithPivotTable
array formatAttachRecords(array $ids, array $attributes)

Создать массив записей для вставки в таблицу связи.

from InteractsWithPivotTable
array formatAttachRecord(int $key, mixed $value, array $attributes, bool $hasTimestamps)

Создать полный набор данных для присоединения.

from InteractsWithPivotTable
array extractAttachIdAndAttributes(mixed $key, mixed $value, array $attributes)

Получить ID записи присоединения и дополнительные атрибуты.

from InteractsWithPivotTable
array baseAttachRecord(int $id, bool $timed)

Создать новую запись связи.

array addTimestampsToAttachment(array $record, bool $exists = false)

Установить метки времени создания и обновления для записи присоединения.

from InteractsWithPivotTable
bool hasPivotColumn(string $column)

Определить, является ли данный столбец столбцом связи.

from InteractsWithPivotTable
int detach(mixed $ids = null, bool $touch = true)

Отсоединить модели от отношения.

from InteractsWithPivotTable
int detachUsingCustomClass(mixed $ids)

Отсоединить модели от отношения, используя пользовательский класс.

from InteractsWithPivotTable
Collection getCurrentlyAttachedPivots()

Получить модели связи, которые в настоящее время прикреплены.

Pivot newPivot(array $attributes = [], bool $exists = false)

Создать новый экземпляр модели связи.

Связь newExistingPivot(array $attributes = [])

Создать новый существующий экземпляр модели связи.

из InteractsWithPivotTable
Построитель запросов newPivotStatement()

Получить новый простой построитель запросов для таблицы связи.

из InteractsWithPivotTable
Построитель запросов newPivotStatementForId(mixed $id)

Получить новое выражение связи для заданного ID.

из InteractsWithPivotTable
Построитель запросов newPivotQuery()

Создать новый построитель запросов для таблицы связи.

$this withPivot(array|mixed $columns)

Установить столбцы в таблице связи для получения.

из InteractsWithPivotTable
массив parseIds(mixed $value)

Получить все ID из данного смешанного значения.

из InteractsWithPivotTable
смешанное parseId(mixed $value)

Получить ID из данного смешанного значения.

из InteractsWithPivotTable
массив castKeys(array $keys)

Преобразовать данные ключей в целые числа, если они числовые, и в строки в противном случае.

из InteractsWithPivotTable
смешанное castKey(mixed $key)

Преобразовать данный ключ в тип ключа первичного ключа.

из InteractsWithPivotTable
массив castAttributes(array $attributes)

Преобразовать данные атрибутов связи.

из InteractsWithPivotTable
смешанное getTypeSwapValue(string $type, mixed $value)

Преобразует заданное значение в заданный тип значения.

из InteractsWithPivotTable
строка resolveTableName(string $table)

Попытка разрешить имя промежуточной таблицы из данной строки.

из BelongsToMany
$this performJoin(Построитель запросов|null $query = null)

Установить условие объединения для запроса связи.

из BelongsToMany
$this addWhereConstraints()

Установить условие where для запроса связи.

array buildDictionary(Collection $results)

Создать словарь моделей, индексированный по внешнему ключу отношения.

from BelongsToMany
string getPivotClass()

Получить класс, используемый для моделей мостика.

from BelongsToMany
$this using(string $class)

Указать пользовательскую модель мостика для отношения.

from BelongsToMany
$this as(string $accessor)

Указать пользовательский аксессор мостика для отношения.

from BelongsToMany
$this wherePivot(string $column, string|null $operator = null, mixed $value = null, string $boolean = 'and')

Установить условие where для столбца таблицы мостика.

from BelongsToMany
$this wherePivotIn(string $column, mixed $values, string $boolean = 'and', bool $not = false)

Установить условие "where in" для столбца таблицы мостика.

from BelongsToMany
$this orWherePivot(string $column, string|null $operator = null, mixed $value = null)

Установить условие "or where" для столбца таблицы мостика.

from BelongsToMany
$this withPivotValue(string|array $column, mixed $value = null)

Установить условие where для столбца таблицы мостика.

from BelongsToMany
$this orWherePivotIn(string $column, mixed $values)

Установить условие "or where in" для столбца таблицы мостика.

from BelongsToMany
$this wherePivotNotIn(string $column, mixed $values, string $boolean = 'and')

Установить условие "where not in" для столбца таблицы мостика.

from BelongsToMany
$this orWherePivotNotIn(string $column, mixed $values)

Установить условие "or where not in" для столбца таблицы мостика.

from BelongsToMany
Collection|Model findOrNew(mixed $id, array $columns = ['*'])

Найти связанную модель по её первичному ключу или вернуть новую модель.

from BelongsToMany
Model firstOrNew(array $attributes)

Получить первую связанную модель, соответствующую атрибутам, или создать её.

from 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
Модель| BelongsToMany firstWhere(Closure|string|array $column, mixed $operator = null, mixed $value = null, string $boolean = 'and')

Добавить базовое условие where к запросу и вернуть первый результат.

из BelongsToMany
mixed first(array $columns = ['*'])

Выполнить запрос и получить первый результат.

из BelongsToMany
Модель| BelongsToMany firstOrFail(array $columns = ['*'])

Выполнить запрос и получить первый результат или выбросить исключение.

из BelongsToMany
array shouldSelect(array $columns = ['*'])

Получить столбцы select для запроса связи.

из BelongsToMany
array aliasedPivotColumns()

Получить столбцы pivot для связи.

LengthAwarePaginator paginate(int|null $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null)

Получить пагинатор для запроса "select".

из BelongsToMany
Paginator simplePaginate(int|null $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null)

Разбить заданный запрос на страницы с помощью простого пагинатора.

from BelongsToMany
bool chunk(int $count, callable $callback)

Разбить результаты запроса на куски.

from BelongsToMany
bool chunkById(int $count, callable $callback, string|null $column = null, string|null $alias = null)

Разбить результаты запроса на куски по сравниванию числовых идентификаторов.

from BelongsToMany
bool each(callable $callback, int $count = 1000)

Выполнить обратный вызов для каждого элемента с разбиением на куски.

from BelongsToMany
LazyCollection cursor()

Получить ленивую коллекцию для данного запроса.

from BelongsToMany
void hydratePivotRelation(array $models)

Гидратировать отношение pivot-таблицы к моделям.

from BelongsToMany
array migratePivotAttributes(Model $model)

Получить атрибуты pivot от модели.

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
Модель create(array $attributes = [], array $joining = [], bool $touch = true)

Создать новый экземпляр связанной модели.

из BelongsToMany
массив createMany(iterable $records, array $joinings = [])

Создать массив новых экземпляров связанных моделей.

из BelongsToMany
Библиотека getRelationExistenceQueryForSelfJoin(Библиотека $query, Библиотека $parentQuery, array|mixed $columns = ['*'])

Добавить ограничения для запроса отношения к одному и тому же столу.

из BelongsToMany
строка getExistenceCompareKey()

Получить ключ для сравнения со значением родительского ключа в запросе "has".

из BelongsToMany
строка getRelationCountHash()

Получить хэш таблицы соединения отношения.

из BelongsToMany
$this withTimestamps(mixed $createdAt = null, mixed $updatedAt = null)

Указать, что таблица pivot имеет метки создания и обновления.

из BelongsToMany
строка getForeignPivotKeyName()

Получить внешний ключ для отношения.

из BelongsToMany
строка getQualifiedForeignPivotKeyName()

Получить полностью квалифицированный внешний ключ для отношения.

из BelongsToMany
строка getRelatedPivotKeyName()

Получить "связанный ключ" для отношения.

из BelongsToMany
строка getQualifiedRelatedPivotKeyName()

Получить полностью квалифицированный "связанный ключ" для отношения.

из BelongsToMany
строка getParentKeyName()

Получить родительский ключ для отношения.

из BelongsToMany
строка getRelatedKeyName()

Получить связанный ключ для отношения.

из BelongsToMany
строка getTable()

Получить промежуточную таблицу для отношения.

из BelongsToMany
строка getRelationName()

Получить имя отношения для отношения.

из BelongsToMany
строка getPivotAccessor()

Получить имя аксессора pivota для этого отношения.

из BelongsToMany
массив getPivotColumns()

Получить столбцы pivot для этого отношения.

из BelongsToMany
строка getMorphType()

Получить имя внешнего ключа «тип».

строка getMorphClass()

Получить имя класса родительской модели.

логическое getInverse()

Получить индикатор для обратного отношения.

Подробности

protected смешанный forwardCallTo(смешанный $object, строка $method, массив $parameters)

Перенаправить вызов метода данному объекту.

Параметры

смешанный $object
строка $method
массив $parameters

Возвращаемое значение

смешанный

Исключения

BadMethodCallException

static protected void throwBadMethodCallException(строка $method)

Выбросить исключение BadMethodCallException для данного метода.

Параметры

строка $method

Возвращаемое значение

void

Исключения

BadMethodCallException

static void macro(строка $name, объект|вызываемый $macro)

Зарегистрировать пользовательское макро.

Параметры

строка $name
объект|вызываемый $macro

Возвращаемое значение

void

static void mixin(объект $mixin, bool $replace = true)

Смешать другой объект в класс.

Параметры

объект $mixin
логическое $replace

Возвращаемое значение

void

Исключения

ReflectionException

static логическое hasMacro(строка $name)

Проверяет, зарегистрировано ли макро.

Параметры

строка $name

Возвращаемое значение

логическое

static mixed __callStatic(string $method, array $parameters)

Динамически обрабатывает вызовы класса.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

mixed __call(string $method, array $parameters)

Динамически обрабатывает вызовы класса.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

void __construct(Builder $query, Model $parent, string $name, string $table, string $foreignPivotKey, string $relatedPivotKey, string $parentKey, string $relatedKey, string $relationName = null, bool $inverse = false)

Создает новый экземпляр отношения "многие ко многим" с морфированием.

Parameters

Builder $query
Model $parent
string $name
string $table
string $foreignPivotKey
string $relatedPivotKey
string $parentKey
string $relatedKey
string $relationName
bool $inverse

Return Value

void

static mixed noConstraints(Closure $callback)

Выполняет обратный вызов без ограничений для отношения.

Parameters

Closure $callback

Return Value

mixed

void addConstraints()

Устанавливает базовые ограничения для запроса отношения.

Return Value

void

void addEagerConstraints(array $models)

Устанавливает ограничения для жадного загрузки отношения.

Parameters

array $models

Return Value

void

array initRelation(array $models, string $relation)

Инициализирует отношение для набора моделей.

Parameters

array $models
string $relation

Return Value

array

array match(array $models, Collection $results, string $relation)

Сопоставить загруженные с нетерпением результаты с их родительскими элементами.

Parameters

array $models
Collection $results
string $relation

Return Value

array

mixed getResults()

Получить результаты отношения.

Return Value

mixed

Collection getEager()

Получить отношение для отложенной загрузки.

Return Value

Collection

Collection get(array $columns = ['*'])

Выполнить запрос в качестве оператора «select».

Parameters

array $columns

Return Value

Collection

void touch()

Изменить все связанные модели для отношения.

Например: Изменить все роли, связанные с этим пользователем.

Return Value

void

int rawUpdate(array $attributes = [])

Выполнить непосредственное обновление базового запроса.

Parameters

array $attributes

Return Value

int

Builder getRelationExistenceCountQuery(Builder $query, Builder $parentQuery)

Добавить ограничения для запроса подсчета отношения.

Parameters

Builder $query
Builder $parentQuery

Return Value

Builder

Builder getRelationExistenceQuery(Builder $query, Builder $parentQuery, array|mixed $columns = ['*'])

Добавить ограничения для запроса подсчета отношения.

Parameters

Builder $query
Builder $parentQuery
array|mixed $columns

Return Value

Builder

protected array getKeys(array $models, string $key = null)

Получить все первичные ключи для массива моделей.

Parameters

array $models
string $key

Return Value

array

Билдер getQuery()

Получить базовый запрос для связи.

Возвращаемое значение

Билдер

Билдер getBaseQuery()

Получить базовый билдер запросов, управляющий билдером Eloquent.

Возвращаемое значение

Билдер

Модель getParent()

Получить родительскую модель связи.

Возвращаемое значение

Модель

строка getQualifiedParentKeyName()

Получить полное имя родительского ключа для связи.

Возвращаемое значение

строка

Модель getRelated()

Получить связанную модель связи.

Возвращаемое значение

Модель

строка createdAt()

Получить имя столбца «создано в».

Возвращаемое значение

строка

строка updatedAt()

Получить имя столбца «обновлено в».

Возвращаемое значение

строка

строка relatedUpdatedAt()

Получить имя столбца «обновлено в» для связанной модели.

Возвращаемое значение

строка

protected строка whereInMethod(Модель $model, строка $key)

Получить имя метода «где в» для ленивой загрузки.

Параметры

Модель $model
строка $key

Возвращаемое значение

строка

static массив morphMap(массив $map = null, bool $merge = true)

Установить или получить карту морфинга для полиморфных связей.

Параметры

массив $map
bool $merge

Возвращаемое значение

массив

static protected массив|null buildMorphMapFromModels(массив $models = null)

Создаёт таблично-индексированный массив из имён классов моделей.

Параметры

массив $models

Возвращаемое значение

массив|null

static строка|null getMorphedModel(строка $alias)

Получить модель, связанную с пользовательским полиморфным типом.

Параметры

строка $alias

Возвращаемое значение

строка|null

void __clone()

Вызвать клонирование базового билдера запроса при клонировании.

Возвращаемое значение

void

array toggle(mixed $ids, bool $touch = true)

Переключает модель (или модели) из родительского элемента.

Каждая существующая модель отсоединяется, а несуществующие — присоединяются.

Параметры

mixed $ids
bool $touch

Возвращаемое значение

array

array syncWithoutDetaching(Collection|Модель|array $ids)

Синхронизирует промежуточные таблицы со списком идентификаторов без отсоединения.

Параметры

Collection|Модель|array $ids

Возвращаемое значение

array

array sync(Collection|Модель|array $ids, bool $detaching = true)

Синхронизирует промежуточные таблицы со списком идентификаторов или коллекцией моделей.

Параметры

Collection|Модель|array $ids
bool $detaching

Возвращаемое значение

array

protected array formatRecordsList(array $records)

Форматирует список записей синхронизации/переключения так, чтобы он индексировался по идентификатору.

Параметры

array $records

Возвращаемое значение

array

protected array attachNew(array $records, array $current, bool $touch = true)

Присоединяет все записи, которые отсутствуют в заданных текущих записях.

Параметры

array $records
array $current
bool $touch

Возвращаемое значение

array

int updateExistingPivot(mixed $id, array $attributes, bool $touch = true)

Обновляет существующую запись pivot в таблице.

Параметры

mixed $id
array $attributes
bool $touch

Возвращаемое значение

int

protected int updateExistingPivotUsingCustomClass(mixed $id, array $attributes, bool $touch)

Обновляет существующую запись pivot в таблице с помощью пользовательского класса.

Параметры

mixed $id
array $attributes
bool $touch

Возвращаемое значение

int

void attach(mixed $id, array $attributes = [], bool $touch = true)

Присоединить модель к родительскому элементу.

Параметры

mixed $id
array $attributes
bool $touch

Возвращаемое значение

void

protected void attachUsingCustomClass(mixed $id, array $attributes)

Присоединить модель к родительскому элементу с использованием пользовательского класса.

Параметры

mixed $id
array $attributes

Возвращаемое значение

void

protected array formatAttachRecords(array $ids, array $attributes)

Создать массив записей для вставки в сводную таблицу.

Параметры

array $ids
array $attributes

Возвращаемое значение

array

protected array formatAttachRecord(int $key, mixed $value, array $attributes, bool $hasTimestamps)

Создать полную загрузку записи присоединения.

Параметры

int $key
mixed $value
array $attributes
bool $hasTimestamps

Возвращаемое значение

array

protected array extractAttachIdAndAttributes(mixed $key, mixed $value, array $attributes)

Получить идентификатор записи присоединения и дополнительные атрибуты.

Параметры

mixed $key
mixed $value
array $attributes

Возвращаемое значение

array

protected array baseAttachRecord(int $id, bool $timed)

Создать новую запись присоединения.

Параметры

int $id
bool $timed

Возвращаемое значение

array

protected array addTimestampsToAttachment(array $record, bool $exists = false)

Установить метки времени создания и обновления для записи присоединения.

Параметры

array $record
bool $exists

Возвращаемое значение

array

bool hasPivotColumn(string $column)

Определить, определён ли данный столбец как столбец присоединения.

Параметры

string $column

Возвращаемое значение

bool

int detach(mixed $ids = null, bool $touch = true)

Отсоединить модели от взаимосвязи.

Параметры

mixed $ids
bool $touch

Возвращаемое значение

int

protected int detachUsingCustomClass(mixed $ids)

Отсоединить модели от отношения с использованием пользовательского класса.

Параметры

mixed $ids

Возвращаемое значение

int

protected Collection getCurrentlyAttachedPivots()

Получить модели-связи, которые в данный момент присоединены.

Возвращаемое значение

Collection

Pivot newPivot(array $attributes = [], bool $exists = false)

Создать новый экземпляр модели-связи.

Параметры

array $attributes
bool $exists

Возвращаемое значение

Pivot

Pivot newExistingPivot(array $attributes = [])

Создать новый существующий экземпляр модели-связи.

Параметры

array $attributes

Возвращаемое значение

Pivot

Builder newPivotStatement()

Получить новый простой билдер запросов для таблицы связей.

Возвращаемое значение

Builder

Builder newPivotStatementForId(mixed $id)

Получить новое выражение для связующей таблицы для данного ID "другого" объекта.

Параметры

mixed $id

Возвращаемое значение

Builder

Builder newPivotQuery()

Создать новый билдер запроса для таблицы связей.

Возвращаемое значение

Builder

$this withPivot(array|mixed $columns)

Установить столбцы в таблице связей для извлечения.

Параметры

array|mixed $columns

Возвращаемое значение

$this

protected array parseIds(mixed $value)

Получить все ID из заданного смешанного значения.

Параметры

mixed $value

Возвращаемое значение

array

protected mixed parseId(mixed $value)

Получить ID из заданного смешанного значения.

Параметры

mixed $value

Возвращаемое значение

mixed

protected array castKeys(array $keys)

Преобразовать заданные ключи в целые числа, если они числовые, и в строки в противном случае.

Параметры

array $keys

Значение результата

array

protected mixed castKey(mixed $key)

Преобразовать заданный ключ для преобразования в тип первичного ключа.

Параметры

mixed $key

Значение результата

mixed

protected array castAttributes(array $attributes)

Преобразовать заданные атрибуты моста.

Параметры

array $attributes

Значение результата

array

protected mixed getTypeSwapValue(string $type, mixed $value)

Преобразует заданное значение в значение заданного типа.

Параметры

string $type
mixed $value

Значение результата

mixed

protected string resolveTableName(string $table)

Попытка разрешить имя промежуточной таблицы из заданной строки.

Параметры

string $table

Значение результата

string

protected $this performJoin(Builder|null $query = null)

Установить условие объединения для запроса отношения.

Параметры

Builder|null $query

Значение результата

$this

protected $this addWhereConstraints()

Установить условие where для запроса отношения.

Значение результата

$this

protected array buildDictionary(Collection $results)

Создать словарь модели, индексированный по внешнему ключу отношения.

Параметры

Collection $results

Значение результата

array

string getPivotClass()

Получить класс, используемый для моделей моста.

Значение результата

string

$this using(string $class)

Указать пользовательскую модель моста для использования в связи.

Параметры

string $class

Значение результата

$this

$this as(string $accessor)

Указать пользовательский аксессор моста для использования в связи.

Параметры

string $accessor

Значение результата

$this

$this wherePivot(string $column, string|null $operator = null, mixed $value = null, string $boolean = 'and')

Установить условие where для столбца таблицы pivot.

Параметры

string $column
string|null $operator
mixed $value
string $boolean

Значение результата

$this

$this wherePivotIn(string $column, mixed $values, string $boolean = 'and', bool $not = false)

Установить условие "where in" для столбца таблицы pivot.

Параметры

string $column
mixed $values
string $boolean
bool $not

Значение результата

$this

$this orWherePivot(string $column, string|null $operator = null, mixed $value = null)

Установить условие "or where" для столбца таблицы pivot.

Параметры

string $column
string|null $operator
mixed $value

Значение результата

$this

$this withPivotValue(string|array $column, mixed $value = null)

Установить условие where для столбца таблицы pivot.

Кроме того, новые записи pivot получат это значение.

Параметры

string|array $column
mixed $value

Значение результата

$this

Исключения

InvalidArgumentException

$this orWherePivotIn(string $column, mixed $values)

Установить условие "or where in" для столбца таблицы pivot.

Параметры

string $column
mixed $values

Значение результата

$this

$this wherePivotNotIn(string $column, mixed $values, string $boolean = 'and')

Установить условие "where not in" для столбца таблицы pivot.

Параметры

string $column
mixed $values
string $boolean

Значение результата

$this

$this orWherePivotNotIn(string $column, mixed $values)

Установить условие "or where not in" для столбца таблицы pivot.

Параметры

string $column
mixed $values

Значение результата

$this

Collection|Модель findOrNew(mixed $id, array $columns = ['*'])

Найти связанную модель по её первичному ключу или вернуть новую инстанцию связанной модели.

Параметры

mixed $id
array $columns

Значение результата

Коллекция|Модель

Модель firstOrNew(array $attributes)

Получить первую связанную модель, соответствующую атрибутам, или создать её.

Параметры

array $attributes

Возвращаемое значение

Модель

Модель firstOrCreate(array $attributes, array $joining = [], bool $touch = true)

Получить первую связанную запись, соответствующую атрибутам, или создать её.

Параметры

array $attributes
array $joining
bool $touch

Возвращаемое значение

Модель

Модель updateOrCreate(array $attributes, array $values = [], array $joining = [], bool $touch = true)

Создать или обновить связанную запись, соответствующую атрибутам, и заполнить её значениями.

Параметры

array $attributes
array $values
array $joining
bool $touch

Возвращаемое значение

Модель

Модель|Коллекция|null find(mixed $id, array $columns = ['*'])

Найти связанную модель по её первичному ключу.

Параметры

mixed $id
array $columns

Возвращаемое значение

Модель|Коллекция|null

Коллекция findMany(mixed $ids, array $columns = ['*'])

Найти несколько связанных моделей по их первичным ключам.

Параметры

mixed $ids
array $columns

Возвращаемое значение

Коллекция

Модель|Коллекция findOrFail(mixed $id, array $columns = ['*'])

Найти связанную модель по её первичному ключу или выбросить исключение.

Параметры

mixed $id
array $columns

Возвращаемое значение

Модель|Коллекция

Исключения

ИсключениеНеНайденаМодель

Модель|СвязьMany-to-Many firstWhere(Closure|string|array $column, mixed $operator = null, mixed $value = null, string $boolean = 'and')

Добавить базовое условие where к запросу и вернуть первый результат.

Параметры

Closure|string|array $column
mixed $operator
mixed $value
string $boolean

Возвращаемое значение

Модель|СвязьMany-to-Many

mixed first(array $columns = ['*'])

Выполнить запрос и получить первый результат.

Параметры

array $columns

Возвращаемое значение

mixed

Модель|СвязьMany-to-Many firstOrFail(array $columns = ['*'])

Выполнить запрос и получить первый результат или выбросить исключение.

Параметры

array $columns

Возвращаемое значение

Модель|СвязьMany-to-Many

Исключения

ModelNotFoundException

protected array shouldSelect(array $columns = ['*'])

Получить столбцы для выбора в запросе к связи.

Параметры

array $columns

Возвращаемое значение

array

protected array aliasedPivotColumns()

Получить столбцы pivot для связи.

"pivot_" добавляется как префикс к каждому столбцу для удобства удаления позже.

Возвращаемое значение

array

LengthAwarePaginator paginate(int|null $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null)

Получить разбиение на страницы для оператора "select".

Параметры

int|null $perPage
array $columns
string $pageName
int|null $page

Возвращаемое значение

LengthAwarePaginator

Paginator simplePaginate(int|null $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null)

Разбить на страницы предоставленный запрос в простой разбиении на страницы.

Параметры

int|null $perPage
array $columns
string $pageName
int|null $page

Возвращаемое значение

Paginator

bool chunk(int $count, callable $callback)

Разбить результаты запроса на куски.

Параметры

int $count
callable $callback

Значение возврата

bool

bool chunkById(int $count, callable $callback, string|null $column = null, string|null $alias = null)

Разбить результаты запроса на куски, сравнивая числовые идентификаторы.

Параметры

int $count
callable $callback
string|null $column
string|null $alias

Значение возврата

bool

bool each(callable $callback, int $count = 1000)

Выполнить обратный вызов для каждого элемента, разбивая на куски.

Параметры

callable $callback
int $count

Значение возврата

bool

LazyCollection cursor()

Получить ленивую коллекцию для данного запроса.

Значение возврата

LazyCollection

protected void hydratePivotRelation(array $models)

Гидратировать отношение к таблице связей для моделей.

Параметры

array $models

Значение возврата

void

protected array migratePivotAttributes(Model $model)

Получить атрибуты связи из модели.

Параметры

Model $model

Значение возврата

array

void touchIfTouching()

Если мы касаемся родительской модели, то коснитесь.

Значение возврата

void

protected bool touchingParent()

Определить, нужно ли касаться родителя при синхронизации.

Значение возврата

bool

protected string guessInverseRelation()

Попытка угадать имя обратного отношения.

Значение возврата

string

Collection allRelatedIds()

Получить все идентификаторы связанных моделей.

Значение возврата

Collection

Модель save(Модель $model, array $pivotAttributes = [], bool $touch = true)

Сохранить новую модель и привязать её к родительской модели.

Параметры

Модель $model
array $pivotAttributes
bool $touch

Возвращаемое значение

Модель

array saveMany(Коллекция|array $models, array $pivotAttributes = [])

Сохранить массив новых моделей и привязать их к родительской модели.

Параметры

Коллекция|array $models
array $pivotAttributes

Возвращаемое значение

array

Модель create(array $attributes = [], array $joining = [], bool $touch = true)

Создать новый экземпляр связанной модели.

Параметры

array $attributes
array $joining
bool $touch

Возвращаемое значение

Модель

array createMany(iterable $records, array $joinings = [])

Создать массив новых экземпляров связанных моделей.

Параметры

iterable $records
array $joinings

Возвращаемое значение

array

Билдер getRelationExistenceQueryForSelfJoin(Билдер $query, Билдер $parentQuery, array|mixed $columns = ['*'])

Добавить ограничения для запроса к отношениям на том же столе.

Параметры

Билдер $query
Билдер $parentQuery
array|mixed $columns

Возвращаемое значение

Билдер

string getExistenceCompareKey()

Получить ключ для сравнения с ключом родительской модели в запросе "has".

Возвращаемое значение

string

string getRelationCountHash()

Получить хэш таблицы соединения отношений.

Возвращаемое значение

string

$this withTimestamps(mixed $createdAt = null, mixed $updatedAt = null)

Указать, что таблица соединения имеет метки времени создания и обновления.

Параметры

mixed $createdAt
mixed $updatedAt

Возвращаемое значение

$this

string getForeignPivotKeyName()

Получить внешний ключ для связи.

Значение возврата

string

string getQualifiedForeignPivotKeyName()

Получить полностью квалифицированный внешний ключ для связи.

Значение возврата

string

string getRelatedPivotKeyName()

Получить «связанный ключ» для связи.

Значение возврата

string

string getQualifiedRelatedPivotKeyName()

Получить полностью квалифицированный «связанный ключ» для связи.

Значение возврата

string

string getParentKeyName()

Получить родительский ключ для связи.

Значение возврата

string

string getRelatedKeyName()

Получить связанный ключ для связи.

Значение возврата

string

string getTable()

Получить промежуточную таблицу для связи.

Значение возврата

string

string getRelationName()

Получить имя связи для связи.

Значение возврата

string

string getPivotAccessor()

Получить имя обработчика сводной таблицы для этой связи.

Значение возврата

string

array getPivotColumns()

Получить столбцы сводной таблицы для этой связи.

Значение возврата

array

string getMorphType()

Получить имя внешнего ключа «тип».

Значение возврата

string

string getMorphClass()

Получить имя класса родительской модели.

Значение возврата

string

bool getInverse()

Получить индикатор обратной связи.

Значение возврата

bool

© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/6.x/Illuminate/Database/Eloquent/Relations/MorphToMany.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API