Spec-Zone.ru › Laravel 9

Отношение

абстрактный класс Отношение реализует 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 = ['*'])

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

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.

Builder toBase()

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

Model getParent()

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

string getQualifiedParentKeyName()

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

Model getRelated()

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

string createdAt()

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

string updatedAt()

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

string relatedUpdatedAt()

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

string whereInMethod(Model $model, string $key)

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

static void requireMorphMap(bool $requireMorphMap = true)

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

static bool requiresMorphMap()

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

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

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

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

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

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

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

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

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

void __clone()

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

Подробности

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

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

Параметры

mixed $object
string $method
массив $parameters

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

mixed

Исключения

BadMethodCallException

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

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

Параметры

mixed $object
string $method
массив $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 void flushMacros()

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

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

void

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

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

Параметры

string $method
массив $parameters

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

mixed

Исключения

BadMethodCallException

mixed __call(string $method, array $parameters)

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

Параметры

string $method
массив $parameters

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

mixed

void __construct(Builder $query, Model $parent)

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

Параметры

Builder $query
Model $parent

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

void

static mixed noConstraints(Closure $callback)

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

Параметры

Closure $callback

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

mixed

abstract void addConstraints()

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

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

void

abstract void addEagerConstraints(array $models)

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

Параметры

массив $models

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

void

abstract array initRelation(array $models, string $relation)

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

Параметры

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

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

массив

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

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

Параметры

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

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

массив

abstract mixed getResults()

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

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

mixed

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

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

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

Коллекция

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

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

Параметры

array|string $columns

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

Модель

Исключения

Model>
MultipleRecordsFoundException

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

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

Параметры

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.

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

Библиотека

Библиотека toBase()

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

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

Библиотека

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

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

Параметры

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

Spec-Zone.ru

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