Spec-Zone.ru › Laravel 5.3

MorphOneOrMany

class MorphOneOrMany extends HasOneOrMany (View source)

Свойства

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

Методы

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

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

void addConstraints()

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

void addEagerConstraints(array $models)

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

array initRelation(array $models, string $relation)

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

из Relation
array match(array $models, Collection $results, string $relation)

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

из Relation
mixed getResults()

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

из Relation
Collection getEager()

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

из Relation
void touch()

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

из Relation
int rawUpdate(array $attributes = [])

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

из Relation
Builder getRelationCountQuery(Builder $query, Builder $parent)

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

из Relation
Builder getRelationQuery(Builder $query, Builder $parent, array|mixed $columns = ['*'])

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

static mixed noConstraints(Closure $callback)

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

из Relation
array getKeys(array $models, string $key = null)

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

из Relation
Builder getQuery()

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

из Relation
Builder getBaseQuery()

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

из Relation
Model getParent()

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

из Relation
string getQualifiedParentKeyName()

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

из HasOneOrMany
Model getRelated()

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

из Relation
string createdAt()

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

из Relation
string updatedAt()

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

из Relation
string relatedUpdatedAt()

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

из Relation
string wrap(string $value)

Оборачивает заданное значение с помощью грамматики родительского запроса.

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

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

из Relation
static array|null buildMorphMapFromModels(array $models = null)

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

из Relation
mixed __call(string $method, array $parameters)

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

из Relation
void __clone()

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

из Relation
Builder getRelationQueryForSelfRelation(Builder $query, Builder $parent, array|mixed $columns = ['*'])

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

из HasOneOrMany
string getRelationCountHash()

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

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

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

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

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

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

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

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

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

из HasOneOrMany
массив buildDictionary(Collection $results)

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

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

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

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

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

из HasOneOrMany
Collection|Модель findOrNew(смешанный тип $id, массив $columns = ['*'])

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

Модель firstOrNew(массив $attributes)

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

Модель firstOrCreate(массив $attributes)

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

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

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

Модель create(массив $attributes)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

строка getMorphType()

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

строка getPlainMorphType()

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

строка getMorphClass()

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

Подробности

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

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

Параметры

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

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

void

void addConstraints()

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

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

void

void addEagerConstraints(массив $models)

Установить ограничения для eager loading связи.

Параметры

массив $models

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

void

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

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

Параметры

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

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

массив

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

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

Параметры

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

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

массив

abstract смешанный тип getResults()

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

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

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

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

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

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

Коллекция

void touch()

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

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

void

int rawUpdate(array $attributes = [])

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

Параметры

array $attributes

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

int

Билдер getRelationCountQuery(Билдер $query, Билдер $parent)

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

Параметры

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

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

Билдер

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

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

Параметры

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

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

Билдер

static mixed noConstraints(Closure $callback)

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

Параметры

Closure $callback

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

mixed

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

string wrap(string $value)

Оборачивает заданное значение синтаксисом грамматики родительского запроса.

Параметры

string $value

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

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

mixed __call(string $method, array $parameters)

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

Параметры

string $method
array $parameters

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

mixed

void __clone()

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

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

void

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

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

Параметры

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

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

Билдер

string getRelationCountHash()

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

Значение возвращаемого значения

string

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

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

Параметры

array $models
Collection $results
string $relation

Значение возвращаемого значения

array

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

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

Параметры

array $models
Collection $results
string $relation

Значение возвращаемого значения

array

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

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

Параметры

array $models
Collection $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

Модель save(Модель $model)

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

Параметры

Модель $model

Значение возвращаемого значения

Модель

Перечисляемый|array saveMany(Перечисляемый|array $models)

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

Параметры

Перечисляемый|array $models

Значение возвращаемого значения

Перечисляемый|array

Коллекция|Модель findOrNew(mixed $id, array $columns = ['*'])

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

Параметры

mixed $id
array $columns

Значение возвращаемого значения

Коллекция|Модель

Модель firstOrNew(array $attributes)

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

Параметры

array $attributes

Значение возвращаемого значения

Модель

Модель firstOrCreate(array $attributes)

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

Параметры

array $attributes

Значение возвращаемого значения

Модель

Модель updateOrCreate(array $attributes, array $values = [])

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

Параметры

array $attributes
array $values

Значение возвращаемого значения

Модель

Модель create(array $attributes)

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

Параметры

array $attributes

Значение возвращаемого значения

Модель

array createMany(array $records)

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

Параметры

array $records

Значение возвращаемого значения

array

int update(array $attributes)

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

Параметры

array $attributes

Значение возвращаемого значения

int

string getHasCompareKey()

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

Значение возвращаемого значения

string

string getForeignKey()

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

Значение возвращаемого значения

string

string getPlainForeignKey()

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

Значение возвращаемого значения

string

mixed getParentKey()

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

Значение возвращаемого значения

mixed

protected void setForeignAttributesForCreate(Модель $model)

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

Параметры

Модель $model

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

void

string getMorphType()

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

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

string

string getPlainMorphType()

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

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

string

string getMorphClass()

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

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

string

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

Spec-Zone.ru

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