Spec-Zone.ru › Laravel 7

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)

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

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 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)

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

static mixed noConstraints(Closure $callback)

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

from Relation
void addConstraints()

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

void addEagerConstraints(array $models)

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

array initRelation(array $models, string $relation)

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

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

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

from Relation
mixed getResults()

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

from Relation
Collection getEager()

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

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 = ['*'])

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

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

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

from Relation
Builder getQuery()

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

from Relation
Builder getBaseQuery()

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

from Relation
Model getParent()

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

from Relation
string getQualifiedParentKeyName()

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

Model getRelated()

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

from Relation
string createdAt()

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

from Relation
string updatedAt()

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

from Relation
string relatedUpdatedAt()

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

from Relation
string whereInMethod(Model $model, string $key)

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

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

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

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

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

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

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

из Relation
void __clone()

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

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

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

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

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

массив 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 = [])

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

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

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

iterable saveMany(iterable $models)

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

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

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

Коллекция createMany(iterable $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)

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

Параметры

строка $method

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

void

Исключения

BadMethodCallException

static void macro(строка $name, object|callable $macro)

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

Параметры

строка $name
object|callable $macro

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

void

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

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

Параметры

object $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|null $key = null)

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

Parameters

array $models
string|null $key

Return Value

array

Builder getQuery()

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

Return Value

Builder

Блок-схема запроса getBaseQuery()

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

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

Блок-схема запроса

Модель getParent()

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

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

Модель

string getQualifiedParentKeyName()

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

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

string

Модель getRelated()

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

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

Модель

string createdAt()

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

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

string

string updatedAt()

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

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

string

string relatedUpdatedAt()

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

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

string

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

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

Параметры

Модель $model
string $key

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

string

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

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

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

Параметры

array $attributes

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

Модель

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

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

Параметры

iterable $records

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

Коллекция

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

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

Параметры

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

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

array

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

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

Параметры

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

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

array

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

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

Параметры

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

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

Модель

Модель 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/7.x/Illuminate/Database/Eloquent/Relations/HasOneOrMany.html

Spec-Zone.ru

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