Spec-Zone.ru › Laravel 6

HasOneOrMany

абстрактный класс HasOneOrMany расширяет Relation (View source)

Особенности

ForwardsCalls
Macroable

Свойства

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

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

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

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

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

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

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

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

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

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

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

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

из Relation
защищённая строка $foreignKey

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

защищённая строка $localKey

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

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

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

Методы

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

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

из ForwardsCalls
static void throwBadMethodCallException(string $method)

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

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

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

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

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

из Macroable
static bool hasMacro(string $name)

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

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

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

из Macroable
mixed __call(string $method, array $parameters)

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

из Macroable
void __construct(Builder $query, Model $parent, string $foreignKey, string $localKey)

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

static mixed noConstraints(Closure $callback)

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

из Relation
void addConstraints()

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

void addEagerConstraints(array $models)

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

array initRelation(array $models, string $relation)

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

из Relation
array match(array $models, Collection $results, string $relation)

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

из Relation
mixed getResults()

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

из Relation
Collection getEager()

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

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

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

из Relation
void touch()

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

из Relation
int rawUpdate(array $attributes = [])

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

из Relation
Builder getRelationExistenceCountQuery(Builder $query, Builder $parentQuery)

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

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

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

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

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

из Relation
Builder getQuery()

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

из Relation
Builder getBaseQuery()

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

из Relation
Model getParent()

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

из Relation
string getQualifiedParentKeyName()

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

Model getRelated()

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

из Relation
string createdAt()

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

из Relation
string updatedAt()

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

из Relation
string relatedUpdatedAt()

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

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

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

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

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

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

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

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

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

из Relation
void __clone()

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

из Relation
Модель make(массив $attributes = [])

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

массив matchOne(массив $models, Коллекция $results, строка $relation)

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

массив matchMany(массив $models, Коллекция $results, строка $relation)

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

массив matchOneOrMany(массив $models, Коллекция $results, строка $relation, строка $type)

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

смешанный тип getRelationValue(массив $dictionary, строка $key, строка $type)

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

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

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

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

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

Модель firstOrNew(массив $attributes, массив $values = [])

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

Модель firstOrCreate(массив $attributes, массив $values = [])

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

Модель updateOrCreate(массив $attributes, массив $values = [])

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

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

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

итерируемый объект saveMany(итерируемый объект $models)

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

Модель create(массив $attributes = [])

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

Коллекция createMany(итерируемый объект $records)

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

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

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

Билдэр getRelationExistenceQueryForSelfRelation(Билдэр $query, Билдэр $parentQuery, массив|смешанный тип $columns = ['*'])

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

строка getRelationCountHash()

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

строка getExistenceCompareKey()

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

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

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

строка getForeignKeyName()

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

строка getQualifiedForeignKeyName()

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

строка getLocalKeyName()

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

Подробности

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

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

Параметры

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

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

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

Исключения

BadMethodCallException

static protected void throwBadMethodCallException(строка $method)

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

Параметры

строка $method

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

void

Исключения

BadMethodCallException

static void macro(строка $name, объект|вызываемый $macro)

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

Параметры

строка $name
объект|вызываемый $macro

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

void

static void mixin(объект $mixin, bool $replace = true)

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

Параметры

объект $mixin
bool $replace

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

void

Исключения

ReflectionException
END_OF_DOCUMENT_MARKER

static bool hasMacro(string $name)

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

Parameters

string $name

Return Value

bool

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

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

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

mixed __call(string $method, array $parameters)

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

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

void __construct(Builder $query, Model $parent, string $foreignKey, string $localKey)

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

Parameters

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

Return Value

void

static mixed noConstraints(Closure $callback)

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

Parameters

Closure $callback

Return Value

mixed

void addConstraints()

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

Return Value

void

void addEagerConstraints(array $models)

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

Parameters

array $models

Return Value

void

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

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

Parameters

array $models
string $relation

Return Value

array

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

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

Parameters

array $models
Collection $results
string $relation

Return Value

array

abstract mixed getResults()

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

Return Value

mixed

Collection getEager()

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

Return Value

Collection

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

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

Parameters

array $columns

Return Value

Collection

void touch()

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

Return Value

void

int rawUpdate(array $attributes = [])

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

Parameters

array $attributes

Return Value

int

Builder getRelationExistenceCountQuery(Builder $query, Builder $parentQuery)

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

Parameters

Builder $query
Builder $parentQuery

Return Value

Builder

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

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

Parameters

Builder $query
Builder $parentQuery
array|mixed $columns

Return Value

Builder

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

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

Parameters

array $models
string $key

Return Value

array

Builder getQuery()

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

Return Value

Builder

Производитель запросов getBaseQuery()

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

Значение возвращаемого значения

Производитель запросов

Модель getParent()

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

Значение возвращаемого значения

Модель

строка getQualifiedParentKeyName()

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

Значение возвращаемого значения

строка

Модель getRelated()

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

Значение возвращаемого значения

Модель

строка createdAt()

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

Значение возвращаемого значения

строка

строка updatedAt()

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

Значение возвращаемого значения

строка

строка relatedUpdatedAt()

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

Значение возвращаемого значения

строка

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

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

Параметры

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

Значение возвращаемого значения

строка

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

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

Параметры

массив $map
bool $merge

Значение возвращаемого значения

массив

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

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

Параметры

массив $models

Значение возвращаемого значения

массив|null

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

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

Параметры

строка $alias

Значение возвращаемого значения

строка|null

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

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

Значение возвращаемого значения

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

Модель make(массив $attributes = [])

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

Параметры

массив $attributes

Значение возвращаемого значения

Модель

массив matchOne(массив $models, Коллекция $results, строка $relation)

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

Параметры

массив $models
Коллекция $results
строка $relation

Значение возвращаемого значения

массив

массив matchMany(массив $models, Коллекция $results, строка $relation)

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

Параметры

массив $models
Коллекция $results
строка $relation

Значение возвращаемого значения

массив

protected массив matchOneOrMany(массив $models, Коллекция $results, строка $relation, строка $type)

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

Параметры

массив $models
Коллекция $results
строка $relation
строка $type

Значение возвращаемого значения

массив

protected смешанное getRelationValue(массив $dictionary, строка $key, строка $type)

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

Параметры

массив $dictionary
строка $key
строка $type

Значение возвращаемого значения

смешанное

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

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

Параметры

Коллекция $results

Значение возвращаемого значения

массив

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

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

Параметры

смешанное $id
массив $columns

Значение возвращаемого значения

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

Модель firstOrNew(массив $attributes, массив $values = [])

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

Параметры

массив $attributes
массив $values

Значение возвращаемого значения

Модель
END_OF_DOCUMENT_MARKER

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

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

Параметры

array $attributes
array $values

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

Модель

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

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

Параметры

array $attributes
array $values

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

Модель

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

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

Параметры

Модель $model

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

Модель|false

iterable saveMany(iterable $models)

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

Параметры

iterable $models

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

iterable

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

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

Параметры

array $attributes

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

Модель

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

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

Параметры

iterable $records

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

Коллекция

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

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

Параметры

Модель $model

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

void

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

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

Параметры

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

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

Билдер

string getRelationCountHash()

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

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

string

string getExistenceCompareKey()

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

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

string

mixed getParentKey()

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

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

mixed

string getForeignKeyName()

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

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

string

string getQualifiedForeignKeyName()

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

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

string

string getLocalKeyName()

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

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

string

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

Spec-Zone.ru

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