Spec-Zone.ru › Laravel 5.3

HasOneOrMany

class HasOneOrMany extends Relation (View source)

Свойства

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

Методы

void __construct(Builder $query, Model $parent, string $foreignKey, 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()

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

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)

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

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

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

string getRelationCountHash()

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

строка getHasCompareKey()

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

строка getForeignKey()

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

строка getPlainForeignKey()

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

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

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

Подробное описание

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

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

Параметры

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

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

void

void addConstraints()

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

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

void

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

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

Параметры

массив $models

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

void

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

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

Параметры

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

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

массив

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

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

Параметры

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

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

массив

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

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

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

смешанный

Collection getEager()

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

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

Collection

void touch()

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

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

void

целое число rawUpdate(массив $attributes = [])

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

Параметры

массив $attributes

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

целое число

Builder getRelationCountQuery(Builder $query, Builder $parent)

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

Параметры

Builder $query
Builder $parent

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

Builder

Builder getRelationQuery(Builder $query, Builder $parent, массив|смешанный $columns = ['*'])

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

Параметры

Builder $query
Builder $parent
массив|смешанный $columns

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

Builder

static mixed noConstraints(Closure $callback)

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

Параметры

Closure $callback

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

mixed

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

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

Параметры

array $models
string $key

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

array

Builder getQuery()

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

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

Builder

Builder getBaseQuery()

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

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

Builder

Модель getParent()

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

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

Модель

string getQualifiedParentKeyName()

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

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

string

Модель getRelated()

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

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

Модель

string createdAt()

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

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

string

string updatedAt()

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

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

string

string relatedUpdatedAt()

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

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

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

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

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

Параметры

Builder $query
Builder $parent
array|mixed $columns

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

Builder

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

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

Модель

Traversable|array saveMany(Traversable|array $models)

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

Параметры

Traversable|array $models

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

Traversable|array

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

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

Параметры

mixed $id
array $columns

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

Collection|Модель

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

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

Spec-Zone.ru

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