Spec-Zone.ru › Laravel 8

Отношение

абстрактный класс Отношение mixin Builder (Просмотреть исходный код)

Трейты

ForwardsCalls
Macroable

Свойства

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

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

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

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

защищенный Model $parent

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

защищенный Model $related

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

статический защищенный булево значение $constraints

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

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

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

статический защищенный булево значение $requireMorphMap

Предотвращает отношения морфинг без карты морфинг.

статический защищенный целочисленный тип $selfJoinCount

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

Методы

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

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

from ForwardsCalls
mixed forwardDecoratedCallTo(mixed $object, string $method, array $parameters)

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

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

Очистить существующие макросы.

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

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

from Macroable
mixed __call(string $method, array $parameters)

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

void __construct(Builder $query, Model $parent)

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

static mixed noConstraints(Closure $callback)

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

void addConstraints()

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

void addEagerConstraints(array $models)

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

array initRelation(array $models, string $relation)

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

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

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

mixed getResults()

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

Collection getEager()

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

Model sole(array|string $columns = ['*'])

Выполнить запрос и получить первый результат, если это единственная совпадающая запись.

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

Выполнить запрос как оператор "select".

void touch()

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

int rawUpdate(array $attributes = [])

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

Builder getRelationExistenceCountQuery(Builder $query, Builder $parentQuery)

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

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

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

string getRelationCountHash(bool $incrementJoinCount = true)

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

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

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

Builder getRelationQuery()

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

Builder getQuery()

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

Builder getBaseQuery()

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

Model getParent()

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

string getQualifiedParentKeyName()

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

Model getRelated()

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

string createdAt()

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

string updatedAt()

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

string relatedUpdatedAt()

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

string whereInMethod(Model $model, string $key)

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

static void requireMorphMap(bool $requireMorphMap = true)

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

static bool requiresMorphMap()

Определить, требуют ли полиморфные отношения явного сопоставления моделей.

static array enforceMorphMap(array $map, bool $merge = true)

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

статический массив morphMap(массив $map = null, bool $merge = true)

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

статический массив|null buildMorphMapFromModels(массив $models = null)

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

статический строка|null getMorphedModel(строка $alias)

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

void __clone()

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

Детали

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

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

Параметры

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

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

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

Исключения

BadMethodCallException

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

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

Параметры

смешанный тип $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
bool $replace

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

void

Исключения

ReflectionException

static bool hasMacro(строка $name)

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

Параметры

строка $name

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

bool

static void flushMacros()

Очистить существующие макросы.

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

void

static смешанный тип __callStatic(строка $method, массив $parameters)

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

Параметры

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

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

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

Исключения

BadMethodCallException

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

Обработать динамические вызовы методов к отношению.

Параметры

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

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

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

void __construct(Builder $query, Model $parent)

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

Параметры

Builder $query
Model $parent

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

void

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

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

Параметры

Closure $callback

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

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

abstract void addConstraints()

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

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

void

abstract void addEagerConstraints(массив $models)

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

Параметры

массив $models

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

void

abstract массив initRelation(массив $models, строка $relation)

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

Параметры

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

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

массив

abstract массив match(массив $models, Collection $results, строка $relation)

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

Параметры

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

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

массив

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

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

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

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

Collection getEager()

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

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

Collection

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

Выполнить запрос и получить первый результат, если это единственная соответствующая запись.

Параметры

array|string $columns

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

Модель

Исключения

ИсключениеModelNotFoundException
ИсключениеMultipleRecordsFoundException

Коллекция get(array $columns = ['*'])

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

Параметры

array $columns

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

Коллекция

void touch()

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

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

void

int rawUpdate(array $attributes = [])

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

Параметры

array $attributes

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

int

Билдэр getRelationExistenceCountQuery(Билдэр $query, Билдэр $parentQuery)

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

Параметры

Билдэр $query
Билдэр $parentQuery

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

Билдэр

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

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

В сущности, эти запросы сравнивают имена столбцов, как в `whereColumn`.

Параметры

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

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

Билдэр

string getRelationCountHash(bool $incrementJoinCount = true)

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

Параметры

bool $incrementJoinCount

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

string

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

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

Параметры

array $models
string|null $key

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

array

protected Билдэр getRelationQuery()

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

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

Билдэр

Билдэр getQuery()

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

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

Билдэр

Билдэр getBaseQuery()

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

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

Билдэр

Модель getParent()

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

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

Модель

string getQualifiedParentKeyName()

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

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

string

Модель getRelated()

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

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

Модель

string createdAt()

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

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

string

string updatedAt()

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

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

string

string relatedUpdatedAt()

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

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

string

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

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

Параметры

Модель $model
string $key

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

string

static void requireMorphMap(bool $requireMorphMap = true)

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

Параметры

bool $requireMorphMap

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

void

static bool requiresMorphMap()

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

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

bool

static array enforceMorphMap(array $map, bool $merge = true)

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

Параметры

array $map
bool $merge

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

array

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

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

Spec-Zone.ru

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