Spec-Zone.ru › Laravel 5.8

BelongsToMany

class BelongsToMany extends Relation (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 Массив для сопоставления имён классов с их именами morph в базе данных. from Relation
protected string $table Промежуточная таблица для отношения.
protected string $foreignPivotKey Внешний ключ родительской модели.
protected string $relatedPivotKey Связанный ключ отношения.
protected string $parentKey Имя ключа родительской модели.
protected string $relatedKey Имя ключа связанной модели.
protected string $relationName Название отношения.
protected array $pivotColumns Столбцы промежуточной таблицы для извлечения.
protected array $pivotWheres Любые ограничения для промежуточной таблицы в условиях where.
protected array $pivotWhereIns Любые ограничения для промежуточной таблицы в условиях whereIn.
protected array $pivotValues Значения по умолчанию для столбцов промежуточной таблицы.
bool $withTimestamps Указывает, доступны ли метки времени в промежуточной таблице.
protected string $pivotCreatedAt Настраиваемый столбец промежуточной таблицы для метки времени created_at.
protected string $pivotUpdatedAt Настраиваемый столбец промежуточной таблицы для метки времени updated_at.
protected string $using Имя класса пользовательской модели пивот для отношения.
protected string $accessor Имя аксессора для отношения "pivot".
static protected int $selfJoinCount Количество самосоединений.

Методы

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 $table, string $foreignPivotKey, string $relatedPivotKey, string $parentKey, string $relatedKey, string $relationName = null)

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

static mixed noConstraints(Closure $callback)

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

from Relation
void addConstraints()

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

void addEagerConstraints(array $models)

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

array initRelation(array $models, string $relation)

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

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

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

mixed getResults()

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

Collection getEager()

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

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

Выполнить запрос как операцию «выбор».

void touch()

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

int rawUpdate(array $attributes = [])

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

from Relation
Builder getRelationExistenceCountQuery(Builder $query, Builder $parentQuery)

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

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

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

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

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

from Relation
Builder getQuery()

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

from Relation
Builder getBaseQuery()

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

from Relation
Model getParent()

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

from Relation
string getQualifiedParentKeyName()

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

Model getRelated()

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

from Relation
string createdAt()

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

string updatedAt()

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

string relatedUpdatedAt()

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

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

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

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

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

from Relation
static array|null buildMorphMapFromModels(array $models = null)

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

from Relation
статический string|null getMorphedModel(string $alias)

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

из Relation
void __clone()

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

из Relation
массив toggle(mixed $ids, bool $touch = true)

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

из InteractsWithPivotTable
массив syncWithoutDetaching(Collection|Model|array $ids)

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

из InteractsWithPivotTable
массив sync(Collection|Model|array $ids, bool $detaching = true)

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

из InteractsWithPivotTable
массив formatRecordsList(array $records)

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

из InteractsWithPivotTable
массив attachNew(array $records, array $current, bool $touch = true)

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

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

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

из InteractsWithPivotTable
int updateExistingPivotUsingCustomClass(mixed $id, array $attributes, bool $touch)

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

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

Прикрепить модель к родителю.

из InteractsWithPivotTable
void attachUsingCustomClass(mixed $id, array $attributes)

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

из InteractsWithPivotTable
массив formatAttachRecords(array $ids, array $attributes)

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

из InteractsWithPivotTable
массив formatAttachRecord(int $key, mixed $value, array $attributes, bool $hasTimestamps)

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

из InteractsWithPivotTable
массив extractAttachIdAndAttributes(mixed $key, mixed $value, array $attributes)

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

из InteractsWithPivotTable
массив baseAttachRecord(int $id, bool $timed)

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

из InteractsWithPivotTable
массив addTimestampsToAttachment(array $record, bool $exists = false)

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

из InteractsWithPivotTable
bool hasPivotColumn(string $column)

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

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

Открепить модели от отношения.

из InteractsWithPivotTable
int detachUsingCustomClass(mixed $ids)

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

из InteractsWithPivotTable
Коллекция getCurrentlyAttachedPivots()

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

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

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

из InteractsWithPivotTable
Pivot newExistingPivot(array $attributes = [])

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

из InteractsWithPivotTable
Билдер newPivotStatement()

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

из InteractsWithPivotTable
Билдер newPivotStatementForId(mixed $id)

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

из InteractsWithPivotTable
Билдер newPivotQuery()

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

из InteractsWithPivotTable
$this withPivot(array|mixed $columns)

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

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

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

из InteractsWithPivotTable
mixed parseId(mixed $value)

Получить идентификатор из заданного значения типа mixed.

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

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

из InteractsWithPivotTable
mixed castKey(mixed $key)

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

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

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

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

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

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

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

$this performJoin(Билдер|null $query = null)

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

$this addWhereConstraints()

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

массив buildDictionary(Коллекция $results)

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

строка 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|array $column, mixed $value = null)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

массив shouldSelect(array $columns = ['*'])

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

массив aliasedPivotColumns()

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

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)

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

булево chunk(int $count, callable $callback)

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

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

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

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

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

void hydratePivotRelation(array $models)

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

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

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

void touchIfTouching()

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

bool touchingParent()

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

string guessInverseRelation()

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

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

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

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

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

string getRelatedKeyName()

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

string getTable()

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

string getRelationName()

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

string getPivotAccessor()

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

Подробности

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

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

Параметры

mixed $object
string $method
array $parameters

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

mixed

Исключения

BadMethodCallException

static protected void throwBadMethodCallException(string $method)

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

Параметры

string $method

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

void

Исключения

BadMethodCallException

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

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

Параметры

string $name
object|callable $macro

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

void

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

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

Параметры

object $mixin
bool $replace

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

void

Исключения

ReflectionException

static bool hasMacro(string $name)

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

Параметры

string $name

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

bool

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

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

Параметры

string $method
array $parameters

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

mixed

Исключения

BadMethodCallException
END_OF_DOCUMENT_MARKER

смешанный тип __call(string $method, array $parameters)

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

Параметры

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

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

смешанный тип

Исключения

BadMethodCallException

пустое значение __construct(Builder $query, Model $parent, string $table, string $foreignPivotKey, string $relatedPivotKey, string $parentKey, string $relatedKey, string $relationName = null)

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

Параметры

Builder $query
Model $parent
строка $table
строка $foreignPivotKey
строка $relatedPivotKey
строка $parentKey
строка $relatedKey
строка $relationName

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

пустое значение

статический смешанный тип noConstraints(Closure $callback)

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

Параметры

Closure $callback

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

смешанный тип

пустое значение addConstraints()

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

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

пустое значение

пустое значение addEagerConstraints(array $models)

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

Параметры

массив $models

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

пустое значение

массив initRelation(array $models, string $relation)

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

Параметры

массив $models
строка $relation

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

массив

массив match(array $models, Collection $results, string $relation)

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

Параметры

массив $models
Collection $results
строка $relation

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

массив

смешанный тип getResults()

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

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

смешанный тип

Collection getEager()

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

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

Collection

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

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

Параметры

массив $columns

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

Collection

пустое значение touch()

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

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

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

пустое значение

целое число rawUpdate(array $attributes = [])

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

Параметры

массив $attributes

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

целое число

Builder getRelationExistenceCountQuery(Builder $query, Builder $parentQuery)

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

Параметры

Builder $query
Builder $parentQuery

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

Builder

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

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

Параметры

Builder $query
Builder $parentQuery
массив|смешанный тип $columns

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

Builder

защищённый массив getKeys(array $models, string $key = null)

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

Параметры

массив $models
строка $key

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

массив

Builder getQuery()

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

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

Builder

Builder getBaseQuery()

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

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

Builder

Model getParent()

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

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

Model
END_OF_DOCUMENT_MARKER

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)

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

Параметры

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)

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

Параметры

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

protected 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

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)

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

Параметры

Builder|null $query

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

$this

protected $this addWhereConstraints()

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

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

$this

protected array buildDictionary(Collection $results)

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

Параметры

Collection $results

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

array

string getPivotClass()

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

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

string

$this using(string $class)

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

Параметры

string $class

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

$this

$this as(string $accessor)

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

Параметры

string $accessor

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

$this

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

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

Параметры

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

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

Параметры

string $column
string $operator
mixed $value

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

$this

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

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

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

Параметры

string|array $column
mixed $value

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

$this

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

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

Параметры

string $column
mixed $values

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

$this

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

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

Параметры

mixed $id
array $columns

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

Collection|Model

Model firstOrNew(array $attributes)

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

Параметры

array $attributes

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

Model

Model firstOrCreate(array $attributes, array $joining = [], bool $touch = true)

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

Параметры

array $attributes
array $joining
bool $touch

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

Model

Model updateOrCreate(array $attributes, array $values = [], array $joining = [], bool $touch = true)

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

Параметры

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

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

Model

Model|Collection|null find(mixed $id, array $columns = ['*'])

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

Параметры

mixed $id
array $columns

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

Model|Collection|null

Collection findMany(mixed $ids, array $columns = ['*'])

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

Параметры

mixed $ids
array $columns

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

Collection

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

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

Параметры

mixed $id
array $columns

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

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

Исключения

ModelNotFoundException

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_" префикс к каждому столбцу для удобства удаления позже.

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

array

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

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

Параметры

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

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

LengthAwarePaginator

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

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

Параметры

int $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

protected void hydratePivotRelation(array $models)

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

Параметры

array $models

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

void

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

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

Параметры

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

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

Модель
END_OF_DOCUMENT_MARKER

array saveMany(Collection|array $models, array $pivotAttributes = [])

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

Параметры

Collection|array $models
array $pivotAttributes

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

array

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

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

Параметры

array $attributes
array $joining
bool $touch

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

Модель

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

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

Параметры

array $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

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

Spec-Zone.ru

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