Spec-Zone.ru › Laravel 8

MorphOneOrMany

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

Трейты

InteractsWithDictionary
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
защищенный string $foreignKey

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

из HasOneOrMany
защищенный string $localKey

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

из HasOneOrMany
защищенный string $morphType

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

защищенный string $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)

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

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

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

from Relation
Builder getQuery()

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

from Relation
Builder getBaseQuery()

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

from Relation
Model getParent()

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

from Relation
строка getQualifiedParentKeyName()

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

из HasOneOrMany
Модель getRelated()

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

из Relation
строка createdAt()

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

из Relation
строка updatedAt()

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

из Relation
строка relatedUpdatedAt()

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

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

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

из Relation
статический void requireMorphMap(bool $requireMorphMap = true)

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

из Relation
статический bool requiresMorphMap()

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

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

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

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

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

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

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

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

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

из Relation
void __clone()

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

из Relation
смешанное getDictionaryKey(смешанное $attribute)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

из HasOneOrMany
iterable saveMany(iterable $models)

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

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

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

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

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

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

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

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

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

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

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

из HasOneOrMany
строка getExistenceCompareKey()

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

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

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

из HasOneOrMany
строка getForeignKeyName()

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

из HasOneOrMany
строка getQualifiedForeignKeyName()

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

из HasOneOrMany
строка getLocalKeyName()

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

из HasOneOrMany
строка getQualifiedMorphType()

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

строка getMorphType()

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

строка getMorphClass()

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

Подробности

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

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

Параметры

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

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

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

Исключения

BadMethodCallException

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

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

Параметры

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

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

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

Исключения

BadMethodCallException

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

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

Параметры

строка $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

static bool hasMacro(строка $name)

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

Параметры

строка $name

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

bool

static void flushMacros()

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

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

void

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

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

Параметры

строка $method
массив $parameters

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

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

Исключения

BadMethodCallException

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

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

Параметры

строка $method
массив $parameters

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

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

Исключения

BadMethodCallException
END_OF_DOCUMENT_MARKER

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

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

Параметры

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)

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

Параметры

array $models
Collection $results
string $relation

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

array

abstract mixed getResults()

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

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

mixed

Collection getEager()

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

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

Collection

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

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

Параметры

array|string $columns

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

Model

Исключения

ModelNotFoundException
MultipleRecordsFoundException

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

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

Параметры

array $columns

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

Collection

void touch()

Обновить метку времени (touch) для всех связанных моделей отношения.

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

void

int rawUpdate(array $attributes = [])

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

Параметры

array $attributes

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

int

Builder getRelationExistenceCountQuery(Builder $query, Builder $parentQuery)

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

Параметры

Builder $query
Builder $parentQuery

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

Builder

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

Билдер getBaseQuery()

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

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

Билдер

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

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

Параметры

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)

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

Параметры

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(Collection $results)

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

Параметры

Collection $results

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

array

Collection|Модель findOrNew(mixed $id, array $columns = ['*'])

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

Параметры

mixed $id
array $columns

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

Collection|Модель

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

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

Модель

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

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

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

string

mixed getParentKey()

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

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

mixed

string getForeignKeyName()

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

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

string

string getQualifiedForeignKeyName()

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

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

string

string getLocalKeyName()

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

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

string

string getQualifiedMorphType()

Получить имя внешнего ключа "type".

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

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/8.x/Illuminate/Database/Eloquent/Relations/MorphOneOrMany.html

Spec-Zone.ru

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