Spec-Zone.ru › Laravel 5.7

MorphOne

class MorphOne extends MorphOneOrMany (View source)

Свойства

SupportsDefaultModels
ForwardsCalls
Macroable

Свойства

static protected array $macros Зарегистрированные строковые макросы. из Macroable
protected Builder $query Экземпляр Eloquent-запросного билдера. из Relation
protected Model $parent Экземпляр родительской модели. из Relation
protected Model $related Экземпляр связанной модели. из Relation
static protected bool $constraints Указывает, добавляет ли отношение ограничения. из Relation
static array $morphMap Массив для сопоставления имён классов с их морфированными именами в базе данных. из Relation
protected string $foreignKey Внешний ключ родительской модели. из HasOneOrMany
protected string $localKey Локальный ключ родительской модели. из HasOneOrMany
static protected int $selfJoinCount Количество самосоединений. из HasOneOrMany
protected string $morphType Тип внешнего ключа для связи. из MorphOneOrMany
protected string $morphClass Имя класса родительской модели. из MorphOneOrMany
protected Closure|array|bool $withDefault Указывает, следует ли использовать экземпляр модели по умолчанию. из SupportsDefaultModels

Методы

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)

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

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

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

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

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

from Relation
Builder getQuery()

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

from Relation
Builder getBaseQuery()

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

from Relation
Model getParent()

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

from Relation
string getQualifiedParentKeyName()

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

from HasOneOrMany
Model getRelated()

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

from Relation
string createdAt()

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

from Relation
string updatedAt()

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

from Relation
string relatedUpdatedAt()

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

from Relation
static array morphMap(array $map = null, bool $merge = true)

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

from Relation
static array|null buildMorphMapFromModels(array $models = null)

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

from Relation
static string|null getMorphedModel(string $alias)

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

from Relation
void __clone()

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

from Relation
Model make(array $attributes = [])

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

from HasOneOrMany
array matchOne(array $models, Collection $results, string $relation)

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

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

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

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

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

from HasOneOrMany
mixed getRelationValue(array $dictionary, string $key, string $type)

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

from HasOneOrMany
array buildDictionary(Collection $results)

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

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

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

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

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

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

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

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

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

from HasOneOrMany
Model|false save(Model $model)

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

from HasOneOrMany
Traversable|array saveMany(Traversable|array $models)

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

from HasOneOrMany
Model create(array $attributes = [])

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

from HasOneOrMany
Collection createMany(array $records)

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

from HasOneOrMany
void setForeignAttributesForCreate(Model $model)

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

from MorphOneOrMany
int update(array $attributes)

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

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

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

from HasOneOrMany
string getRelationCountHash()

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

from HasOneOrMany
string getExistenceCompareKey()

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

from HasOneOrMany
mixed getParentKey()

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

from HasOneOrMany
string getForeignKeyName()

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

from HasOneOrMany
string getQualifiedForeignKeyName()

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

from HasOneOrMany
строка getQualifiedMorphType()

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

из MorphOneOrMany
строка getMorphType()

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

из MorphOneOrMany
строка getMorphClass()

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

из MorphOneOrMany
Модель newRelatedInstanceFor(Модель $parent)

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

$this withDefault(Closure|массив|булево $callback = true)

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

из SupportsDefaultModels
Модель|null getDefaultFor(Модель $parent)

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

из SupportsDefaultModels

Подробности

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

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

Параметры

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

Значение результата

смешанный

Исключения

BadMethodCallException

static protected пустое throwBadMethodCallException(строка $method)

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

Параметры

строка $method

Значение результата

пустое

Исключения

BadMethodCallException

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

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

Параметры

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

Значение результата

пустое

static пустое mixin(объект $mixin)

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

Параметры

объект $mixin

Значение результата

пустое

Исключения

ReflectionException

static логическое hasMacro(строка $name)

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

Параметры

строка $name

Значение результата

логическое

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

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

Параметры

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

Значение результата

смешанный

Исключения

BadMethodCallException

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

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

Параметры

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

Значение результата

смешанный

Исключения

BadMethodCallException

пустое __construct(Builder $query, Модель $parent, строка $type, строка $id, строка $localKey)

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

Параметры

Builder $query
Модель $parent
строка $type
строка $id
строка $localKey

Значение результата

пустое

static смешанный noConstraints(Closure $callback)

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

Параметры

Closure $callback

Значение результата

смешанный

пустое addConstraints()

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

Значение результата

пустое

пустое addEagerConstraints(массив $models)

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

Параметры

массив $models

Значение результата

пустое

массив initRelation(массив $models, строка $relation)

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

Параметры

массив $models
строка $relation

Значение результата

массив

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

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

Параметры

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

Значение результата

массив

смешанный getResults()

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

Значение результата

смешанный
END_OF_DOCUMENT_MARKER

Коллекция getEager()

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

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

Коллекция

Коллекция get(array $columns = ['*'])

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

Параметры

array $columns

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

Коллекция

void touch()

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

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

void

int rawUpdate(array $attributes = [])

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

Параметры

array $attributes

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

int

Билдер getRelationExistenceCountQuery(Билдер $query, Билдер $parentQuery)

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

Параметры

Билдер $query
Билдер $parentQuery

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

Билдер

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

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

Параметры

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

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

Билдер

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

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

Параметры

array $models
string $key

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

array

Билдер getQuery()

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

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

Билдер

Билдер getBaseQuery()

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

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

Билдер

Модель getParent()

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

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

Модель

string getQualifiedParentKeyName()

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

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

string

Модель getRelated()

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

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

Модель

string createdAt()

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

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

string

string updatedAt()

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

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

string

string relatedUpdatedAt()

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

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

string

static array morphMap(array $map = null, bool $merge = true)

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

Параметры

array $map
bool $merge

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

array

static protected array|null buildMorphMapFromModels(array $models = null)

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

Параметры

array $models

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

array|null

static string|null getMorphedModel(string $alias)

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

Параметры

string $alias

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

string|null

void __clone()

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

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

void

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

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

Параметры

array $attributes

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

Модель

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

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

Параметры

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

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

array

массив matchMany(массив $models, Collection $results, строка $relation)

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

Параметры

массив $models
Collection $results
строка $relation

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

массив

protected массив matchOneOrMany(массив $models, Collection $results, строка $relation, строка $type)

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

Параметры

массив $models
Collection $results
строка $relation
строка $type

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

массив

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

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

Параметры

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

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

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

protected массив buildDictionary(Collection $results)

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

Параметры

Collection $results

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

массив

Collection|Model findOrNew(смешанный тип $id, массив $columns = ['*'])

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

Параметры

смешанный тип $id
массив $columns

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

Collection|Model

Model firstOrNew(массив $attributes, массив $values = [])

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

Параметры

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

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

Model

Model firstOrCreate(массив $attributes, массив $values = [])

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

Параметры

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

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

Model

Model updateOrCreate(массив $attributes, массив $values = [])

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

Параметры

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

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

Model

Model|false save(Model $model)

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

Параметры

Model $model

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

Model|false

Traversable|массив saveMany(Traversable|массив $models)

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

Параметры

Traversable|массив $models

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

Traversable|массив

Model create(массив $attributes = [])

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

Параметры

массив $attributes

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

Model

Collection createMany(массив $records)

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

Параметры

массив $records

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

Collection

protected пустое значение setForeignAttributesForCreate(Model $model)

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

Параметры

Model $model

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

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

целое число update(массив $attributes)

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

Параметры

массив $attributes

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

целое число

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

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

Параметры

Builder $query
Builder $parentQuery
массив|смешанный тип $columns

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

Builder

строка getRelationCountHash()

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

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

строка

string getExistenceCompareKey()

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

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

string

mixed getParentKey()

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

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

mixed

string getForeignKeyName()

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

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

string

string getQualifiedForeignKeyName()

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

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

string

string getQualifiedMorphType()

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

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

string

string getMorphType()

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

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

string

string getMorphClass()

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

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

string

Модель newRelatedInstanceFor(Модель $parent)

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

Параметры

Модель $parent

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

Модель

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

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

Параметры

Closure|array|bool $callback

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

$this

protected Модель|null getDefaultFor(Модель $parent)

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

Параметры

Модель $parent

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

Модель|null

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

Spec-Zone.ru

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