Spec-Zone.ru › Laravel 10

HasOne

class HasOne extends HasOneOrMany implements SupportsPartialRelations (View source)

Свойства

ComparesRelatedModels
CanBeOneOfMany
SupportsDefaultModels
InteractsWithDictionary
ForwardsCalls
Macroable

Свойства

static protected array $macros

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

from Macroable
protected Builder $query

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

from Relation
protected Model $parent

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

from Relation
protected Model $related

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

from Relation
protected bool $eagerKeysWereEmpty

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

from Relation
static protected bool $constraints

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

from Relation
static array $morphMap

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

from Relation
static protected bool $requireMorphMap

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

from Relation
static protected int $selfJoinCount

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

from Relation
protected string $foreignKey

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

from HasOneOrMany
protected string $localKey

Локальный ключ родительской модели.

from HasOneOrMany
protected bool $isOneOfMany

Определяет, является ли отношение "один-из-многих".

from CanBeOneOfMany
protected string $relationName

Название отношения.

from CanBeOneOfMany
protected Builder|null $oneOfManySubQuery

Экземпляр билдера подзапроса внутреннего объединения "один-из-многих".

from CanBeOneOfMany
protected Closure|array|bool $withDefault

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

from SupportsDefaultModels

Методы

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 $parent, string $foreignKey, string $localKey)

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

from HasOneOrMany
static mixed noConstraints(Closure $callback)

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

from Relation
void addConstraints()

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

from HasOneOrMany
void addEagerConstraints(array $models)

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

from HasOneOrMany
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 CanBeOneOfMany
Builder getQuery()

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

from Relation
Builder getBaseQuery()

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

from Relation
Builder toBase()

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

from Relation
Модель getParent()

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

из Отношения
строка getQualifiedParentKeyName()

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

из ОдинКОдинИлиМногие
Модель getRelated()

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

из Отношения
строка createdAt()

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

из Отношения
строка updatedAt()

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

из Отношения
строка relatedUpdatedAt()

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

из Отношения
пустое whereInEager(строка $whereIn, строка $key, массив $modelKeys, Билдер $query = null)

Добавить ограничение whereIn для eager загрузки заданного набора ключей моделей.

из Отношения
строка whereInMethod(Модель $model, строка $key)

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

из Отношения
статический пустое requireMorphMap(bool $requireMorphMap = true)

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

из Отношения
статический bool requiresMorphMap()

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

из Отношения
статический массив enforceMorphMap(массив $map, bool $merge = true)

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

из Отношения
статический массив morphMap(массив $map = null, bool $merge = true)

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

из Отношения
статический массив|null buildMorphMapFromModels(массив $models = null)

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

из Отношения
статический строка|null getMorphedModel(строка $alias)

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

из Отношения
пустое __clone()

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

из Отношения
смешанный getDictionaryKey(смешанный $attribute)

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

из Взаимодействует со словарем
Модель make(массив $attributes = [])

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

из ОдинКОдинИлиМногие
Коллекция makeMany(итерируемое $records)

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

из ОдинКОдинИлиМногие
массив matchOne(массив $models, Коллекция $results, строка $relation)

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

из ОдинКОдинИлиМногие
массив matchMany(массив $models, Коллекция $results, строка $relation)

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

из ОдинКОдинИлиМногие
массив matchOneOrMany(массив $models, Коллекция $results, строка $relation, строка $type)

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

из ОдинКОдинИлиМногие
смешанный getRelationValue(массив $dictionary, строка $key, строка $type)

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

из ОдинКОдинИлиМногие
массив buildDictionary(Коллекция $results)

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

из ОдинКОдинИлиМногие
Коллекция|Модель findOrNew(смешанный $id, массив $columns = ['*'])

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

из ОдинКОдинИлиМногие
Модель firstOrNew(массив $attributes = [], массив $values = [])

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

из ОдинКОдинИлиМногие
Модель firstOrCreate(массив $attributes = [], массив $values = [])

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

из ОдинКОдинИлиМногие
Модель createOrFirst(массив $attributes = [], массив $values = [])

Попытаться создать запись. Если возникает нарушение уникальности, попытаться найти соответствующую запись.

из ОдинКОдинИлиМногие
Модель updateOrCreate(array $attributes, array $values = [])

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

from HasOneOrMany
Модель|false save(Модель $model)

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

from HasOneOrMany
Модель|false saveQuietly(Модель $model)

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

from HasOneOrMany
iterable saveMany(iterable $models)

Прикрепить коллекцию моделей к родительскому экземпляру.

from HasOneOrMany
iterable saveManyQuietly(iterable $models)

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

from HasOneOrMany
Модель create(array $attributes = [])

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

from HasOneOrMany
Модель createQuietly(array $attributes = [])

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

from HasOneOrMany
Модель forceCreate(array $attributes = [])

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

from HasOneOrMany
Модель forceCreateQuietly(array $attributes = [])

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

from HasOneOrMany
Коллекция createMany(iterable $records)

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

from HasOneOrMany
Коллекция createManyQuietly(iterable $records)

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

from HasOneOrMany
void setForeignAttributesForCreate(Модель $model)

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

from HasOneOrMany
Билдер getRelationExistenceQueryForSelfRelation(Билдер $query, Билдер $parentQuery, array|mixed $columns = ['*'])

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

from HasOneOrMany
string getExistenceCompareKey()

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

from HasOneOrMany
mixed getParentKey()

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

from ComparesRelatedModels
string getForeignKeyName()

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

from HasOneOrMany
string getQualifiedForeignKeyName()

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

from HasOneOrMany
string getLocalKeyName()

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

from HasOneOrMany
bool is(Модель|null $model)

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

from ComparesRelatedModels
bool isNot(Модель|null $model)

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

from ComparesRelatedModels
mixed getRelatedKeyFrom(Модель $model)

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

bool compareKeys(mixed $parentKey, mixed $relatedKey)

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

from ComparesRelatedModels
void addOneOfManySubQueryConstraints(Билдер $query, string|null $column = null, string|null $aggregate = null)

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

array|string getOneOfManySubQuerySelectColumns()

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

void addOneOfManyJoinSubQueryConstraints(JoinClause $join)

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

$this ofMany(string|array|null $column = 'id', string|Closure|null $aggregate = 'MAX', string|null $relation = null)

Указать, что связь — это единственный результат более широкой связи «один ко многим».

from CanBeOneOfMany
$this latestOfMany(string|array|null $column = 'id', string|null $relation = null)

Укажите, что отношение — это последний единственный результат более сложного отношения «один ко многим».

из CanBeOneOfMany
$this oldestOfMany(string|array|null $column = 'id', string|null $relation = null)

Укажите, что отношение — это самый ранний единственный результат более сложного отношения «один ко многим».

из CanBeOneOfMany
string getDefaultOneOfManyJoinAlias(string $relation)

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

из CanBeOneOfMany
Builder newOneOfManySubQuery(string|array $groupBy, string[]|null $columns = null, string|null $aggregate = null)

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

из CanBeOneOfMany
void addOneOfManyJoinSubQuery(Builder $parent, Builder $subQuery, string[] $on)

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

из CanBeOneOfMany
void mergeOneOfManyJoinsTo(Builder $query)

Объединить соединения запроса отношения в заданный конструктор запросов.

из CanBeOneOfMany
Builder|void getOneOfManySubQuery()

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

из CanBeOneOfMany
string qualifySubSelectColumn(string $column)

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

из CanBeOneOfMany
string qualifyRelatedColumn(string $column)

Квалифицировать связанный столбец с использованием имени связанной таблицы, если оно не квалифицировано.

из CanBeOneOfMany
string guessRelationship()

Угадать имя отношения «один к одному» с помощью стека вызовов.

из CanBeOneOfMany
bool isOneOfMany()

Определить, является ли отношение отношением «один ко многим».

из CanBeOneOfMany
string getRelationName()

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

из CanBeOneOfMany
Model newRelatedInstanceFor(Model $parent)

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

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

Возвращает новую модель в случае, если отношение не существует.

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

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

из SupportsDefaultModels

Подробности

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

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

Parameters

mixed $object
string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

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

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

Parameters

mixed $object
string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

static protected void throwBadMethodCallException(string $method)

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

Parameters

string $method

Return Value

void

Exceptions

BadMethodCallException

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

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

Parameters

string $name
object|callable $macro

Return Value

void

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
END_OF_DOCUMENT_MARKER

статический void flushMacros()

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

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

void

статический 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 $parent, string $foreignKey, string $localKey)

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

Параметры

Builder $query
Model $parent
string $foreignKey
string $localKey

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

void

статический 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

Collection getEager()

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

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

Collection

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

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

Параметры

array|string $columns

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

Модель

Исключения

Модель>
MultipleRecordsFoundException

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

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

Параметры

array $columns

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

Collection

void touch()

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

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

void

int rawUpdate(array $attributes = [])

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

Параметры

array $attributes

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

int

Builder getRelationExistenceCountQuery(Builder $query, Builder $parentQuery)

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

Параметры

Builder $query
Builder $parentQuery

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

Builder

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

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

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

Параметры

Builder $query
Builder $parentQuery
array|mixed $columns

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

Builder

строка getRelationCountHash(bool $incrementJoinCount = true)

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

Параметры

bool $incrementJoinCount

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

строка

protected массив getKeys(array $models, string|null $key = null)

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

Параметры

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

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

массив

protected Builder getRelationQuery()

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

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

Builder

Builder getQuery()

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

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

Builder

Builder getBaseQuery()

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

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

Builder

Builder toBase()

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

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

Builder

Модель getParent()

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

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

Модель

строка getQualifiedParentKeyName()

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

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

строка

Модель getRelated()

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

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

Модель

строка createdAt()

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

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

строка

строка updatedAt()

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

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

строка

строка relatedUpdatedAt()

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

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

строка

protected void whereInEager(string $whereIn, string $key, array $modelKeys, Builder $query = null)

Добавить ограничение whereIn для загрузки заданного набора ключей модели.

Параметры

строка $whereIn
строка $key
массив $modelKeys
Builder $query

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

void

protected строка whereInMethod(Модель $model, string $key)

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

Параметры

Модель $model
строка $key

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

строка

static void requireMorphMap(bool $requireMorphMap = true)

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

Параметры

bool $requireMorphMap

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

void

static bool requiresMorphMap()

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

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

bool

static массив enforceMorphMap(array $map, bool $merge = true)

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

Параметры

массив $map
bool $merge

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

массив

static массив morphMap(array $map = null, bool $merge = true)

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

Параметры

массив $map
bool $merge

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

массив

static protected массив|null buildMorphMapFromModels(array $models = null)

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

Параметры

массив $models

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

массив|null

static строка|null getMorphedModel(string $alias)

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

Параметры

строка $alias

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

строка|null

void __clone()

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

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

void

protected смешанный getDictionaryKey(mixed $attribute)

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

Параметры

смешанный $attribute

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

смешанный

Исключения

InvalidArgumentException
END_OF_DOCUMENT_MARKER

Модель make(array $attributes = [])

Создать и вернуть несохранённую инстанцию связанной модели.

Параметры

array $attributes

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

Модель

Коллекция makeMany(iterable $records)

Создать и вернуть несохранённую инстанцию связанных моделей.

Параметры

iterable $records

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

Коллекция

array matchOne(array $models, Коллекция $results, string $relation)

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

Параметры

array $models
Коллекция $results
string $relation

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

array

array matchMany(array $models, Коллекция $results, string $relation)

Сопоставить загруженные с помощью eager loading результаты с их родительскими элементами (множественные).

Параметры

array $models
Коллекция $results
string $relation

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

array

protected array matchOneOrMany(array $models, Коллекция $results, string $relation, string $type)

Сопоставить загруженные с помощью eager loading результаты с их родительскими элементами (множественные).

Параметры

array $models
Коллекция $results
string $relation
string $type

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

array

protected mixed getRelationValue(array $dictionary, string $key, string $type)

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

Параметры

array $dictionary
string $key
string $type

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

mixed

protected array buildDictionary(Коллекция $results)

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

Параметры

Коллекция $results

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

array

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

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

Параметры

mixed $id
array $columns

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

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

Модель firstOrNew(array $attributes = [], array $values = [])

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

Параметры

array $attributes
array $values

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

Модель

Модель firstOrCreate(array $attributes = [], array $values = [])

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

Параметры

array $attributes
array $values

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

Модель

Модель createOrFirst(array $attributes = [], array $values = [])

Попытка создания записи. Если возникает нарушение уникальности, попытка найти соответствующую запись.

Параметры

array $attributes
array $values

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

Модель

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

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

Параметры

array $attributes
array $values

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

Модель

Модель|false save(Модель $model)

Привязать инстанцию модели к родительской модели.

Параметры

Модель $model

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

Модель|false

Модель|false saveQuietly(Модель $model)

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

Параметры

Модель $model

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

Модель|false

iterable saveMany(iterable $models)

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

Параметры

iterable $models

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

iterable

iterable saveManyQuietly(iterable $models)

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

Параметры

iterable $models

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

iterable

Модель create(array $attributes = [])

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

Параметры

array $attributes

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

Модель

Модель createQuietly(array $attributes = [])

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

Параметры

array $attributes

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

Модель

Модель forceCreate(array $attributes = [])

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

Параметры

array $attributes

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

Модель

Модель forceCreateQuietly(array $attributes = [])

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

Параметры

array $attributes

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

Модель

Коллекция createMany(iterable $records)

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

Параметры

iterable $records

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

Коллекция

Коллекция createManyQuietly(iterable $records)

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

Параметры

iterable $records

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

Коллекция

protected void setForeignAttributesForCreate(Модель $model)

Установить внешний ID для создания связанной модели.

Параметры

Модель $model

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

void

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

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

Параметры

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

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

Билдер

строка getExistenceCompareKey()

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

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

строка

abstract смешанный getParentKey()

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

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

смешанный

строка getForeignKeyName()

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

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

строка

строка getQualifiedForeignKeyName()

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

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

строка

строка getLocalKeyName()

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

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

строка

логическое is(Модель|null $model)

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

Параметры

Модель|null $model

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

логическое

логическое isNot(Модель|null $model)

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

Параметры

Модель|null $model

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

логическое

protected смешанный getRelatedKeyFrom(Модель $model)

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

Параметры

Модель $model

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

смешанный

protected логическое compareKeys(mixed $parentKey, mixed $relatedKey)

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

Параметры

mixed $parentKey
mixed $relatedKey

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

логическое

void addOneOfManySubQueryConstraints(Билдер $query, string|null $column = null, string|null $aggregate = null)

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

Параметры

Билдер $query
string|null $column
string|null $aggregate

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

void

массив|строка getOneOfManySubQuerySelectColumns()

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

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

массив|строка

void addOneOfManyJoinSubQueryConstraints(JoinClause $join)

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

Параметры

JoinClause $join

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

void

$this ofMany(string|array|null $column = 'id', string|Closure|null $aggregate = 'MAX', string|null $relation = null)

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

Параметры

string|array|null $column
string|Closure|null $aggregate
string|null $relation

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

$this

Исключения

InvalidArgumentException

$this latestOfMany(string|array|null $column = 'id', string|null $relation = null)

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

Параметры

string|array|null $column
string|null $relation

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

$this

$this oldestOfMany(string|array|null $column = 'id', string|null $relation = null)

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

Параметры

string|array|null $column
string|null $relation

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

$this

protected string getDefaultOneOfManyJoinAlias(string $relation)

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

Параметры

string $relation

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

string

protected Builder newOneOfManySubQuery(string|array $groupBy, string[]|null $columns = null, string|null $aggregate = null)

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

Параметры

string|array $groupBy
string[]|null $columns
string|null $aggregate

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

Builder

protected void addOneOfManyJoinSubQuery(Builder $parent, Builder $subQuery, string[] $on)

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

Параметры

Builder $parent
Builder $subQuery
string[] $on

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

void

protected void mergeOneOfManyJoinsTo(Builder $query)

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

Параметры

Builder $query

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

void

Builder|void getOneOfManySubQuery()

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

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

Builder|void

string qualifySubSelectColumn(string $column)

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

Параметры

string $column

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

string

protected string qualifyRelatedColumn(string $column)

Квалифицировать связанный столбец, используя имя связанной таблицы, если он ещё не квалифицирован.

Параметры

string $column

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

string

protected string guessRelationship()

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

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

string

bool isOneOfMany()

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

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

bool

string getRelationName()

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

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

string

Model newRelatedInstanceFor(Model $parent)

Создать новую связанную сущность для заданной модели.

Параметры

Model $parent

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

Model

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

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

Параметры

Closure|array|bool $callback

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

$this

protected Model|null getDefaultFor(Model $parent)

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

Параметры

Model $parent

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

Model|null

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

Spec-Zone.ru

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