Spec-Zone.ru › Laravel 9

BelongsTo

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

Трейты

ComparesRelatedModels
InteractsWithDictionary
SupportsDefaultModels
ForwardsCalls
Macroable

Свойства

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

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

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

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

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

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

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

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

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

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

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

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

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

Препятствует морфным отношениям без морфного отображения.

из Relation
статический защищённый int $selfJoinCount

Количество самосвязей.

из Relation
защищённый Closure|массив|bool $withDefault

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

из SupportsDefaultModels
защищённый Model $child

Экземпляр дочерней модели отношения.

защищённый string $foreignKey

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

защищённый string $ownerKey

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

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

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

Методы

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)

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

from Macroable
void __construct(Builder $query, Model $child, string $foreignKey, string $ownerKey, string $relationName)

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

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
Model sole(array|string $columns = ['*'])

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

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

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

from Relation
void touch()

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

from Relation
int rawUpdate(array $attributes = [])

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

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

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

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

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

string getRelationCountHash(bool $incrementJoinCount = true)

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

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

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

from Relation
Builder getRelationQuery()

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

from Relation
Builder getQuery()

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

from Relation
Builder getBaseQuery()

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

from Relation
Builder toBase()

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

from Relation
Model getParent()

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

from Relation
string getQualifiedParentKeyName()

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

из Relation
Model getRelated()

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

из Relation
string createdAt()

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

из Relation
string updatedAt()

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

из Relation
string relatedUpdatedAt()

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

из Relation
string whereInMethod(Model $model, string $key)

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

из Relation
static void requireMorphMap(bool $requireMorphMap = true)

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

из Relation
static bool requiresMorphMap()

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

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

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

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

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

из Relation
static array|null buildMorphMapFromModels(array $models = null)

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

из Relation
static string|null getMorphedModel(string $alias)

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

из Relation
void __clone()

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

из Relation
bool is(Model|null $model)

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

из ComparesRelatedModels
bool isNot(Model|null $model)

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

из ComparesRelatedModels
mixed getParentKey()

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

mixed getRelatedKeyFrom(Model $model)

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

bool compareKeys(mixed $parentKey, mixed $relatedKey)

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

из ComparesRelatedModels
mixed getDictionaryKey(mixed $attribute)

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

из InteractsWithDictionary
Model newRelatedInstanceFor(Model $parent)

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

$this withDefault(Closure|array|bool $callback = true)

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

из SupportsDefaultModels
Model|null getDefaultFor(Model $parent)

Получить значение по умолчанию для этого отношения.

из SupportsDefaultModels
array getEagerModelKeys(array $models)

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

Model associate(Model|int|string|null $model)

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

Model dissociate()

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

Model disassociate()

Псевдоним метода «dissociate».

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

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

bool relationHasIncrementingId()

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

Model getChild()

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

string getForeignKeyName()

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

string getQualifiedForeignKeyName()

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

string getOwnerKeyName()

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

string getQualifiedOwnerKeyName()

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

string getRelationName()

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

Подробности

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

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

Параметры

mixed $object
string $method
array $parameters

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

mixed

Исключения

BadMethodCallException

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

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

Параметры

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

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

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

void

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

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

Параметры

string $method
array $parameters

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

mixed

Исключения

BadMethodCallException

mixed __call(string $method, array $parameters)

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

Параметры

string $method
array $parameters

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

mixed

Исключения

BadMethodCallException

void __construct(Builder $query, Model $child, string $foreignKey, string $ownerKey, string $relationName)

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

Параметры

Builder $query
Model $child
string $foreignKey
string $ownerKey
string $relationName

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

void

static mixed noConstraints(Closure $callback)

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

Параметры

Closure $callback

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

mixed

void addConstraints()

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

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

void

void addEagerConstraints(array $models)

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

Параметры

array $models

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

void

array initRelation(array $models, string $relation)

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

Параметры

array $models
string $relation

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

array

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

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

Параметры

array $models
Collection $results
string $relation

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

array

mixed getResults()

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

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

mixed

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

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

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

Коллекция

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

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

Параметры

array|string $columns

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

Модель

Исключения

Model>
ИсключениеНесколькихЗаписей

Коллекция 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 = ['*'])

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

Параметры

Билдер $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()

Получить имя столбца «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 void requireMorphMap(bool $requireMorphMap = true)

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

Parameters

bool $requireMorphMap

Return Value

void

static bool requiresMorphMap()

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

Return Value

bool

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

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

Parameters

array $map
bool $merge

Return Value

array

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

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

Parameters

array $map
bool $merge

Return Value

array

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

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

Parameters

array $models

Return Value

array|null

static string|null getMorphedModel(string $alias)

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

Parameters

string $alias

Return Value

string|null

void __clone()

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

Return Value

void

bool is(Model|null $model)

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

Parameters

Model|null $model

Return Value

bool

bool isNot(Model|null $model)

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

Parameters

Model|null $model

Return Value

bool

mixed getParentKey()

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

Return Value

mixed

protected mixed getRelatedKeyFrom(Model $model)

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

Parameters

Model $model

Return Value

mixed

protected bool compareKeys(mixed $parentKey, mixed $relatedKey)

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

Parameters

mixed $parentKey
mixed $relatedKey

Return Value

bool

protected mixed getDictionaryKey(mixed $attribute)

Получить атрибут словаря ключей — привести его к строковому типу, если необходимо.

Parameters

mixed $attribute

Return Value

mixed

Exceptions

InvalidArgumentException

protected Model newRelatedInstanceFor(Model $parent)

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

Parameters

Model $parent

Return Value

Model

$this withDefault(Closure|array|bool $callback = true)

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

Parameters

Closure|array|bool $callback

Return Value

$this

protected Model|null getDefaultFor(Model $parent)

Получить значение по умолчанию для этого отношения.

Parameters

Model $parent

Return Value

Model|null

protected array getEagerModelKeys(array $models)

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

Parameters

array $models

Return Value

array

Model associate(Model|int|string|null $model)

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

Parameters

Model|int|string|null $model

Return Value

Model

Model dissociate()

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

Return Value

Model

Model disassociate()

Псевдоним метода "dissociate".

Return Value

Model

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

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

Параметры

Builder $query
Builder $parentQuery
array|mixed $columns

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

Builder

protected bool relationHasIncrementingId()

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

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

bool

Модель getChild()

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

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

Модель

string getForeignKeyName()

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

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

string

string getQualifiedForeignKeyName()

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

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

string

string getOwnerKeyName()

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

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

string

string getQualifiedOwnerKeyName()

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

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

string

string getRelationName()

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

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

string

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

Spec-Zone.ru

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