Spec-Zone.ru › Laravel 5.6

MorphTo

класс MorphTo расширяет BelongsTo (Просмотреть исходный код)

Трейты

SupportsDefaultModels
Macroable

Свойства

статический защищённый массив $macros Зарегистрированные строковые макросы. из Macroable
защищённый Builder $query Экземпляр билдера запросов Eloquent. из Relation
защищённый Model $parent Экземпляр родительской модели. из Relation
защищённый Model $related Экземпляр связанной модели. из Relation
статический защищённый bool $constraints Указывает, добавляет ли отношение ограничения. из Relation
статический массив $morphMap Массив для сопоставления имён классов с их именами morph в базе данных. из Relation
защищённый Closure|массив|bool $withDefault Указывает, следует ли использовать экземпляр модели по умолчанию. из SupportsDefaultModels
защищённый $child Экземпляр дочерней модели отношения. из BelongsTo
защищённый строка $foreignKey Внешний ключ родительской модели. из BelongsTo
защищённый строка $ownerKey Связанный ключ в родительской модели. из BelongsTo
защищённый строка $relation Имя отношения. из BelongsTo
статический защищённый int $selfJoinCount Количество самосвязей. из BelongsTo
защищённый строка $morphType Тип полиморфного отношения.
защищённый Collection $models Модели, отношения которых загружаются с жадностью.
защищённый массив $dictionary Все модели, индексированные по ID.
защищённый массив $macroBuffer Буфер динамических вызовов макросов запроса.

Методы

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)

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

void __construct(Builder $query, Model $parent, string $foreignKey, string $ownerKey, string $type, string $relation)

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

static mixed noConstraints(Closure $callback)

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

from Relation
void addConstraints()

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

from BelongsTo
void addEagerConstraints(array $models)

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

array initRelation(array $models, string $relation)

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

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

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

mixed getResults()

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

Collection getEager()

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

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

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

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

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

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

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

from Relation
void __clone()

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

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

Создать новую связанную инстанцию для данной модели.

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

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

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

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

из SupportsDefaultModels
массив getEagerModelKeys(массив $models)

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

из BelongsTo
mixed update(массив $attributes)

Обновить родительскую модель в отношении.

из BelongsTo
Модель associate(Модель|int|string $model)

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

Модель dissociate()

Отвязать ранее связанную модель от данного родителя.

Билдер getRelationExistenceQueryForSelfRelation(Билдер $query, Билдер $parentQuery, массив|смешанный $columns = ['*'])

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

из BelongsTo
строка getRelationCountHash()

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

из BelongsTo
логическое значение relationHasIncrementingId()

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

из BelongsTo
строка getForeignKey()

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

из BelongsTo
строка getQualifiedForeignKey()

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

из BelongsTo
строка getOwnerKey()

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

из BelongsTo
строка getQualifiedOwnerKeyName()

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

из BelongsTo
строка getRelation()

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

из BelongsTo
void buildDictionary(Коллекция $models)

Построить словарь с моделями.

Коллекция getResultsByType(строка $type)

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

массив gatherKeysByType(строка $type)

Собрать все внешние ключи для данного типа.

Модель createModelByType(строка $type)

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

void matchToMorphParents(строка $type, Коллекция $results)

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

строка getMorphType()

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

массив getDictionary()

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

Билдер replayMacros(Билдер $query)

Повторить сохранённые вызовы макросов на фактическом связанном экземпляре.

Подробности

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

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

Параметры

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

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

void

static void mixin(объект $mixin)

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

Параметры

объект $mixin

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

void

Исключения

ReflectionException

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

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

Параметры

строка $name

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

логическое значение

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

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

Параметры

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

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

смешанный

Исключения

BadMethodCallException
END_OF_DOCUMENT_MARKER

mixed __call(string $method, array $parameters)

Обработка динамических вызовов методов для связи.

Параметры

string $method
array $parameters

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

mixed

void __construct(Builder $query, Model $parent, string $foreignKey, string $ownerKey, string $type, string $relation)

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

Параметры

Builder $query
Model $parent
string $foreignKey
string $ownerKey
string $type
string $relation

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

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

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

Вызывается через метод eager load билдера запросов Eloquent.

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

Collection

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

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

Параметры

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

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

В основном эти запросы сравнивают имена столбцов, как например, `whereColumn`.

Параметры

Builder $query
Builder $parentQuery
array|mixed $columns

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

Builder

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

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

Параметры

array $models
string $key

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

array

Builder getQuery()

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

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

Builder

Builder getBaseQuery()

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

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

Builder

Model getParent()

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

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

Model

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)

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

Параметры

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

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

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

Параметры

Модель $parent

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

Модель

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

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

Параметры

Closure|array|bool $callback

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

$this

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

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

Параметры

Модель $parent

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

Модель|null

protected array getEagerModelKeys(array $models)

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

Параметры

array $models

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

array

mixed update(array $attributes)

Обновить родительскую модель в рамках отношения.

Параметры

array $attributes

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

mixed

Модель associate(Модель|int|string $model)

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

Параметры

Модель|int|string $model

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

Модель

Модель dissociate()

Отвязать ранее связанную модель от заданного родителя.

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

Модель

Генератор getRelationExistenceQueryForSelfRelation(Генератор $query, Генератор $parentQuery, array|mixed $columns = ['*'])

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

Параметры

Генератор $query
Генератор $parentQuery
array|mixed $columns

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

Генератор

string getRelationCountHash()

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

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

string

protected bool relationHasIncrementingId()

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

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

bool

string getForeignKey()

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

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

string

string getQualifiedForeignKey()

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

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

string

string getOwnerKey()

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

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

string

string getQualifiedOwnerKeyName()

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

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

string

строка getRelation()

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

Значение возврата

строка

защищённый пустое buildDictionary(Коллекция $models)

Создать словарь с моделями.

Параметры

Коллекция $models

Значение возврата

пустое

защищённый Коллекция getResultsByType(строка $type)

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

Параметры

строка $type

Значение возврата

Коллекция

защищённый массив gatherKeysByType(строка $type)

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

Параметры

строка $type

Значение возврата

массив

Модель createModelByType(строка $type)

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

Параметры

строка $type

Значение возврата

Модель

защищённый пустое matchToMorphParents(строка $type, Коллекция $results)

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

Параметры

строка $type
Коллекция $results

Значение возврата

пустое

строка getMorphType()

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

Значение возврата

строка

массив getDictionary()

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

Значение возврата

массив

защищённый Билдер replayMacros(Билдер $query)

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

Параметры

Билдер $query

Значение возврата

Билдер

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

Spec-Zone.ru

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