Spec-Zone.ru › Laravel 7

MorphToMany

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

Трейты

InteractsWithPivotTable
ForwardsCalls
Macroable

Свойства

static protected array $macros

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

из Macroable
protected Builder $query

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

из Relation
protected Model $parent

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

из Relation
protected Model $related

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

из Relation
static protected bool $constraints

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

из Relation
static array $morphMap

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

из Relation
protected string $table

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

из BelongsToMany
protected string $foreignPivotKey

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

из BelongsToMany
protected string $relatedPivotKey

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

из BelongsToMany
protected string $parentKey

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

из BelongsToMany
protected string $relatedKey

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

из BelongsToMany
protected string $relationName

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

из BelongsToMany
protected array $pivotColumns

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

из BelongsToMany
protected array $pivotWheres

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

из BelongsToMany
protected array $pivotWhereIns

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

из BelongsToMany
protected array $pivotWhereNulls

Любые ограничения промежуточной таблицы для условий whereNull.

из BelongsToMany
protected array $pivotValues

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

из BelongsToMany
bool $withTimestamps

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

из BelongsToMany
protected string $pivotCreatedAt

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

из 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, 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|null $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|null $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
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)

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

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)

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

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)

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

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)

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

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

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

from InteractsWithPivotTable
bool hasPivotColumn(string $column)

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

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

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

from InteractsWithPivotTable
int detachUsingCustomClass(mixed $ids)

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

from InteractsWithPivotTable
Collection getCurrentlyAttachedPivots()

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

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

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

Pivot newExistingPivot(array $attributes = [])

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

from InteractsWithPivotTable
Builder newPivotStatement()

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

from InteractsWithPivotTable
Builder newPivotStatementForId(mixed $id)

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

из InteractsWithPivotTable
Builder newPivotQuery()

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

$this withPivot(array|mixed $columns)

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

из InteractsWithPivotTable
array parseIds(mixed $value)

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

из InteractsWithPivotTable
mixed parseId(mixed $value)

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

из InteractsWithPivotTable
array castKeys(array $keys)

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

из InteractsWithPivotTable
mixed castKey(mixed $key)

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

из InteractsWithPivotTable
array castAttributes(array $attributes)

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

из InteractsWithPivotTable
mixed getTypeSwapValue(string $type, mixed $value)

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

из InteractsWithPivotTable
string resolveTableName(string $table)

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

из BelongsToMany
$this performJoin(Builder|null $query = null)

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

из BelongsToMany
$this addWhereConstraints()

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

array buildDictionary(Collection $results)

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

из BelongsToMany
string getPivotClass()

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

из BelongsToMany
$this using(string $class)

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

из BelongsToMany
$this as(string $accessor)

Указать пользовательский аксессор для связующей таблицы отношения.

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

Установить условие where для столбца связующей таблицы.

из BelongsToMany
$this wherePivotBetween(string $column, array $values, string $boolean = 'and', bool $not = false)

Установить условие «where between» для столбца связующей таблицы.

из BelongsToMany
$this orWherePivotBetween(string $column, array $values)

Установить условие «or where between» для столбца связующей таблицы.

из BelongsToMany
$this wherePivotNotBetween(string $column, array $values, string $boolean = 'and')

Установить условие «where pivot not between» для столбца связующей таблицы.

из BelongsToMany
$this orWherePivotNotBetween(string $column, array $values)

Установить условие «or where not between» для столбца связующей таблицы.

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

Установить условие «where in» для столбца связующей таблицы.

из BelongsToMany
$this orWherePivot(string $column, mixed $operator = null, mixed $value = null)

Установить условие «or where» для столбца связующей таблицы.

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

Установить условие where для столбца связующей таблицы.

из BelongsToMany
$this orWherePivotIn(string $column, mixed $values)

Установить условие «or where in» для столбца связующей таблицы.

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

Установить условие «where not in» для столбца связующей таблицы.

из BelongsToMany
$this orWherePivotNotIn(string $column, mixed $values)

Установить условие «or where not in» для столбца связующей таблицы.

из BelongsToMany
$this wherePivotNull(string $column, string $boolean = 'and', bool $not = false)

Установить условие «where null» для столбца связующей таблицы.

из BelongsToMany
$this wherePivotNotNull(string $column, string $boolean = 'and')

Установить условие «не равно null» для столбца таблицы связей.

из BelongsToMany
$this orWherePivotNull(string $column, bool $not = false)

Установить условие «или равно null» для столбца таблицы связей.

из BelongsToMany
$this orWherePivotNotNull(string $column)

Установить условие «или не равно null» для столбца таблицы связей.

из 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(Arrayable|array $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()

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

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)

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

из BelongsToMany
bool chunk(int $count, callable $callback)

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

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

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

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

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

из BelongsToMany
LazyCollection cursor()

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

из BelongsToMany
void hydratePivotRelation(array $models)

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

из BelongsToMany
array migratePivotAttributes(Модель $model)

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

из BelongsToMany
void touchIfTouching()

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

из BelongsToMany
bool touchingParent()

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

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

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

из BelongsToMany
Коллекция allRelatedIds()

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

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

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

из BelongsToMany
массив saveMany(Коллекция|массив $models, array $pivotAttributes = [])

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

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

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

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

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

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

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

строка getMorphClass()

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

логическое значение getInverse()

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

Подробности

protected mixed forwardCallTo(mixed $object, string $method, array $parameters)

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

Параметры

mixed $object
строка $method
массив $parameters

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

mixed

Исключения

BadMethodCallException

static protected void throwBadMethodCallException(string $method)

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

Параметры

строка $method

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

void

Исключения

BadMethodCallException

static void macro(string $name, object|callable $macro)

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

Параметры

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

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

void
END_OF_DOCUMENT_MARKER

static void mixin(object $mixin, bool $replace = true)

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

Parameters

object $mixin
bool $replace

Return Value

void

Exceptions

ReflectionException

static bool hasMacro(string $name)

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

Parameters

string $name

Return Value

bool

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|null $relationName = null, bool $inverse = false)

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

Parameters

Builder $query
Model $parent
string $name
string $table
string $foreignPivotKey
string $relatedPivotKey
string $parentKey
string $relatedKey
string|null $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
END_OF_DOCUMENT_MARKER

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

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

Параметры

array $models
string|null $key

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

array

Builder getQuery()

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

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

Builder

Builder getBaseQuery()

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

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

Builder

Модель getParent()

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

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

Модель

string getQualifiedParentKeyName()

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

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

string

Модель getRelated()

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

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

Модель

string createdAt()

Получить имя столбца "created at".

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

string

string updatedAt()

Получить имя столбца "updated at".

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

string

string relatedUpdatedAt()

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

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

string

protected string whereInMethod(Модель $model, string $key)

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

Параметры

Модель $model
string $key

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

string

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

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

Параметры

array $map
bool $merge

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

array

static protected array|null buildMorphMapFromModels(array $models = null)

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

Параметры

array $models

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

array|null

static string|null getMorphedModel(string $alias)

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

Параметры

string $alias

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

string|null

void __clone()

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

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

void

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

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

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

Параметры

mixed $ids
bool $touch

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

array

array syncWithoutDetaching(Коллекция|Модель|array $ids)

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

Параметры

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

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

array

array sync(Коллекция|Модель|array $ids, bool $detaching = true)

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

Параметры

Коллекция|Модель|array $ids
bool $detaching

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

array

protected array formatRecordsList(array $records)

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

Параметры

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)

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

Параметры

mixed $id

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

Builder

Builder newPivotQuery()

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

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

Builder

$this withPivot(array|mixed $columns)

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

Параметры

array|mixed $columns

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

$this

protected array parseIds(mixed $value)

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

Параметры

mixed $value

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

array

protected mixed parseId(mixed $value)

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

Параметры

mixed $value

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

mixed

protected array castKeys(array $keys)

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

Параметры

array $keys

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

array
END_OF_DOCUMENT_MARKER

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, mixed $operator = null, mixed $value = null, string $boolean = 'and')

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

Параметры

string $column
mixed $operator
mixed $value
string $boolean

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

$this

$this wherePivotBetween(string $column, array $values, string $boolean = 'and', bool $not = false)

Установить условие «where between» для столбца таблицы связей.

Параметры

string $column
array $values
string $boolean
bool $not

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

$this

$this orWherePivotBetween(string $column, array $values)

Установить условие «or where between» для столбца таблицы связей.

Параметры

string $column
array $values

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

$this

$this wherePivotNotBetween(string $column, array $values, string $boolean = 'and')

Установить условие «where pivot not between» для столбца таблицы связей.

Параметры

string $column
array $values
string $boolean

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

$this

$this orWherePivotNotBetween(string $column, array $values)

Установить условие «or where not between» для столбца таблицы связей.

Параметры

string $column
array $values

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

$this

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

Установить условие «where in» для столбца таблицы связей.

Параметры

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

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

$this

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

Установить условие «or where» для столбца таблицы связей.

Параметры

string $column
mixed $operator
mixed $value

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

$this

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

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

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

Параметры

string|array $column
mixed $value

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

$this

Исключения

InvalidArgumentException

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

Установить условие «or where in» для столбца таблицы связей.

Параметры

string $column
mixed $values

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

$this

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

Установите условие «не в» для столбца таблицы промежуточного соединения.

Параметры

string $column
mixed $values
string $boolean

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

$this

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

Установите условие «или не в» для столбца таблицы промежуточного соединения.

Параметры

string $column
mixed $values

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

$this

$this wherePivotNull(string $column, string $boolean = 'and', bool $not = false)

Установите условие «равно null» для столбца таблицы промежуточного соединения.

Параметры

string $column
string $boolean
bool $not

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

$this

$this wherePivotNotNull(string $column, string $boolean = 'and')

Установите условие «не равно null» для столбца таблицы промежуточного соединения.

Параметры

string $column
string $boolean

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

$this

$this orWherePivotNull(string $column, bool $not = false)

Установите условие «или равно null» для столбца таблицы промежуточного соединения.

Параметры

string $column
bool $not

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

$this

$this orWherePivotNotNull(string $column)

Установите условие «или не равно null» для столбца таблицы промежуточного соединения.

Параметры

string $column

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

$this

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

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

Параметры

mixed $id
array $columns

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

Collection|Модель

Модель 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(Arrayable|array $ids, array $columns = ['*'])

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

Параметры

Arrayable|array $ids
array $columns

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

Коллекция

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

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

Параметры

mixed $id
array $columns

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

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

Исключения

Исключение_ненайденной_модели

Модель|BelongsToMany 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

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

Модель|BelongsToMany

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

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

Параметры

array $columns

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

mixed

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

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

Параметры

array $columns

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

Модель|BelongsToMany

Исключения

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)

Заполнить отношение pivot для моделей.

Параметры

array $models

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

void

protected array migratePivotAttributes(Модель $model)

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

Параметры

Модель $model

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

array

void touchIfTouching()

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

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

void

protected bool touchingParent()

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

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

bool

protected string guessInverseRelation()

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

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

string

Коллекция allRelatedIds()

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

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

Коллекция

Модель 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

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

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

Параметры

Builder $query
Builder $parentQuery
array|mixed $columns

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

Builder

string getExistenceCompareKey()

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

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

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/7.x/Illuminate/Database/Eloquent/Relations/MorphToMany.html

Spec-Zone.ru

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