Spec-Zone.ru › Laravel 10

MorphOneOrMany

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

Трейты

InteractsWithDictionary
ForwardsCalls
Macroable

Свойства

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

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

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

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

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

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

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

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

из Relation
защищенный bool $eagerKeysWereEmpty

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

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

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

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

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

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

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

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

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

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

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

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

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

из HasOneOrMany
защищенная строка $morphType

Тип внешнего ключа для связи.

защищенная строка $morphClass

Имя класса родительской модели.

Методы

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 $type, string $id, string $localKey)

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

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

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

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

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

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

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

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

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

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

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

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

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

из Отношения
void whereInEager(string $whereIn, string $key, array $modelKeys, Билдер $query = null)

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

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

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

из Отношения
static void requireMorphMap(bool $requireMorphMap = true)

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

из Отношения
static bool requiresMorphMap()

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

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

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

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

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

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

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

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

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

из Отношения
void __clone()

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

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

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

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

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

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

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

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

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

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

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

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

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

из ОдинКОдномуИлиМногим
смешанный тип getRelationValue(array $dictionary, string $key, string $type)

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

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

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

из ОдинКОдномуИлиМногим
Коллекция|Модель findOrNew(mixed $id, array $columns = ['*'])

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

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

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

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

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

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

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

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

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

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

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

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

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

из HasOneOrMany
iterable saveMany(iterable $models)

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

из HasOneOrMany
iterable saveManyQuietly(iterable $models)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

из HasOneOrMany
string getExistenceCompareKey()

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

из HasOneOrMany
mixed getParentKey()

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

из HasOneOrMany
string getForeignKeyName()

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

из HasOneOrMany
string getQualifiedForeignKeyName()

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

из HasOneOrMany
string getLocalKeyName()

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

из HasOneOrMany
string getQualifiedMorphType()

Получить имя внешнего ключа «тип».

string getMorphType()

Получить простое имя морф-типа без таблицы.

string getMorphClass()

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

Подробности

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
END_OF_DOCUMENT_MARKER

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

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

Параметры

Builder $query
Model $parent
string $type
string $id
string $localKey

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

void

static mixed noConstraints(Closure $callback)

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

Параметры

Closure $callback

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

mixed

void addConstraints()

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

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

void

void addEagerConstraints(array $models)

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

Параметры

array $models

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

void

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

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

Параметры

array $models
string $relation

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

array

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

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

Параметры

array $models
Collection $results
string $relation

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

array

abstract mixed getResults()

Получить результаты связи.

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

mixed

Collection getEager()

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

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

Collection

Model sole(array|string $columns = ['*'])

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

Параметры

array|string $columns

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

Model

Исключения

Model>
MultipleRecordsFoundException

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

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

Параметры

array $columns

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

Collection

void touch()

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

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

void

int rawUpdate(array $attributes = [])

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

Параметры

array $attributes

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

int

Builder getRelationExistenceCountQuery(Builder $query, Builder $parentQuery)

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

Параметры

Builder $query
Builder $parentQuery

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

Builder
END_OF_DOCUMENT_MARKER

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

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

Параметры

Builder $query
Builder $parentQuery
array|mixed $columns

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

Builder

string getRelationCountHash(bool $incrementJoinCount = true)

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

Параметры

bool $incrementJoinCount

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

string

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

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

Параметры

array $models
string|null $key

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

array

protected Builder getRelationQuery()

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

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

Builder

Builder getQuery()

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

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

Builder

Builder getBaseQuery()

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

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

Builder

Builder toBase()

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

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

Builder

Модель getParent()

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

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

Модель

string getQualifiedParentKeyName()

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

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

string

Модель getRelated()

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

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

Модель

string createdAt()

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

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

string

string updatedAt()

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

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

string

string relatedUpdatedAt()

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

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

string

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

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

Параметры

string $whereIn
string $key
array $modelKeys
Builder $query

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

void

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)

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

Параметры

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

protected mixed getDictionaryKey(mixed $attribute)

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

Параметры

mixed $attribute

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

mixed

Исключения

InvalidArgumentException

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

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

Билдер

string getExistenceCompareKey()

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

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

string

mixed getParentKey()

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

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

mixed

string getForeignKeyName()

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

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

string

string getQualifiedForeignKeyName()

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

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

string

string getLocalKeyName()

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

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

string

string getQualifiedMorphType()

Получить имя внешнего ключа «тип».

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

string

string getMorphType()

Получить простое имя типа морфизма без таблицы.

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

string

string getMorphClass()

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

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

string

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

Spec-Zone.ru

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