Spec-Zone.ru › Laravel 9

MorphOne

class MorphOne extends MorphOneOrMany implements SupportsPartialRelations (View source)

Свойства

CanBeOneOfMany
ComparesRelatedModels
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
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 string $morphType

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

from MorphOneOrMany
protected string $morphClass

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

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

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

from MorphOneOrMany
static mixed noConstraints(Closure $callback)

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

from Relation
void addConstraints()

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

from MorphOneOrMany
void addEagerConstraints(array $models)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

из ОдноКмногие
Коллекция makeMany(итерируемый $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 = [])

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

из ОдноКмногие
Модель|ложь save(Модель $model)

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

из ОдноКмногие
Модель|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 = [])

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

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

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

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

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

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

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

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

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

из HasOneOrMany
string getExistenceCompareKey()

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

из HasOneOrMany
mixed getParentKey()

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

из ComparesRelatedModels
string getForeignKeyName()

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

из HasOneOrMany
string getQualifiedForeignKeyName()

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

из HasOneOrMany
string getLocalKeyName()

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

из HasOneOrMany
string getQualifiedMorphType()

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

из MorphOneOrMany
string getMorphType()

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

из MorphOneOrMany
string getMorphClass()

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

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

Добавить ограничения для вложенного запроса INNER JOIN для отношений one-to-many.

array|string getOneOfManySubQuerySelectColumns()

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

void addOneOfManyJoinSubQueryConstraints(JoinClause $join)

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

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

Указать, что отношение является единственным результатом более широкого отношения one-to-many.

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

Указать, что отношение является последним единственным результатом более широкого отношения one-to-many.

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

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

из CanBeOneOfMany
string getDefaultOneOfManyJoinAlias(string $relation)

Получить стандартный псевдоним для one-to-many внутреннего условия соединения.

из CanBeOneOfMany
Билдер newOneOfManySubQuery(string|array $groupBy, string|null $column = 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
bool is(Model|null $model)

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

из ComparesRelatedModels
bool isNot(Model|null $model)

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

из ComparesRelatedModels
mixed getRelatedKeyFrom(Model $model)

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

bool compareKeys(mixed $parentKey, mixed $relatedKey)

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

из ComparesRelatedModels
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

static void flushMacros()

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

Return Value

void
END_OF_DOCUMENT_MARKER

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

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

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

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
END_OF_DOCUMENT_MARKER

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 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, Collection $results, string $relation)

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

Parameters

array $models
Collection $results
string $relation

Return Value

array

array matchMany(array $models, Collection $results, string $relation)

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

Parameters

array $models
Collection $results
string $relation

Return Value

array

protected array matchOneOrMany(array $models, Collection $results, string $relation, string $type)

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

Parameters

array $models
Collection $results
string $relation
string $type

Return Value

array

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

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

Parameters

array $dictionary
string $key
string $type

Return Value

mixed

protected array buildDictionary(Collection $results)

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

Parameters

Collection $results

Return Value

array

Collection|Model findOrNew(mixed $id, array $columns = ['*'])

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

Parameters

mixed $id
array $columns

Return Value

Collection|Model

Model firstOrNew(array $attributes = [], array $values = [])

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

Parameters

array $attributes
array $values

Return Value

Model

Model firstOrCreate(array $attributes = [], array $values = [])

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

Parameters

array $attributes
array $values

Return Value

Model

Model updateOrCreate(array $attributes, array $values = [])

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

Parameters

array $attributes
array $values

Return Value

Model

Model|false save(Model $model)

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

Parameters

Model $model

Return Value

Model|false

Model|false saveQuietly(Model $model)

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

Parameters

Model $model

Return Value

Model|false

iterable saveMany(iterable $models)

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

Parameters

iterable $models

Return Value

iterable

iterable saveManyQuietly(iterable $models)

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

Parameters

iterable $models

Return Value

iterable

Model create(array $attributes = [])

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

Parameters

array $attributes

Return Value

Model

Model createQuietly(array $attributes = [])

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

Parameters

array $attributes

Return Value

Model

Model forceCreate(array $attributes = [])

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

Parameters

array $attributes

Return Value

Model

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

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

Параметры

iterable $records

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

Коллекция

Коллекция createManyQuietly(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

abstract mixed getParentKey()

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

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

mixed

string getForeignKeyName()

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

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

string

string getQualifiedForeignKeyName()

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

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

string

string getLocalKeyName()

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

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

string

string getQualifiedMorphType()

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

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

string

string getMorphType()

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

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

string

string getMorphClass()

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

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

string

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

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

Параметры

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

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

void

array|string getOneOfManySubQuerySelectColumns()

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

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

array|string

void addOneOfManyJoinSubQueryConstraints(ЗапросСоединения $join)

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

Параметры

ЗапросСоединения $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

Исключения

ИсключениеНеверногоАргумента

$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 $column = null, string|null $aggregate = null)

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

Parameters

string|array $groupBy
string|null $column
string|null $aggregate

Return Value

Builder

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

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

Parameters

Builder $parent
Builder $subQuery
string $on

Return Value

void

protected void mergeOneOfManyJoinsTo(Builder $query)

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

Parameters

Builder $query

Return Value

void

Builder|void getOneOfManySubQuery()

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

Return Value

Builder|void

string qualifySubSelectColumn(string $column)

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

Parameters

string $column

Return Value

string

protected string qualifyRelatedColumn(string $column)

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

Parameters

string $column

Return Value

string

protected string guessRelationship()

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

Return Value

string

bool isOneOfMany()

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

Return Value

bool

string getRelationName()

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

Return Value

string

bool is(Model|null $model)

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

Parameters

Model|null $model

Return Value

bool

bool isNot(Model|null $model)

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

Parameters

Model|null $model

Return Value

bool

protected mixed getRelatedKeyFrom(Model $model)

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

Parameters

Model $model

Return Value

mixed

protected bool compareKeys(mixed $parentKey, mixed $relatedKey)

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

Parameters

mixed $parentKey
mixed $relatedKey

Return Value

bool

Model newRelatedInstanceFor(Model $parent)

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

Parameters

Model $parent

Return Value

Model

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

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

Parameters

Closure|array|bool $callback

Return Value

$this

protected Model|null getDefaultFor(Model $parent)

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

Parameters

Model $parent

Return Value

Model|null

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

Spec-Zone.ru

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