Spec-Zone.ru › Laravel 5.5

HasOneOrMany

class HasOneOrMany extends Relation (View source)

Свойства

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 protected array $morphMap Массив для сопоставления имен классов с их именами морфингов в базе данных. from Relation
protected string $foreignKey Внешний ключ родительской модели.
protected string $localKey Локальный ключ родительской модели.
static protected int $selfJoinCount Количество самосоединений.

Методы

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 $foreignKey, string $localKey)

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

static mixed noConstraints(Closure $callback)

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

from Relation
void addConstraints()

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

void addEagerConstraints(array $models)

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

array initRelation(array $models, string $relation)

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

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

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

from Relation
mixed getResults()

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

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

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

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

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

from Relation
Builder getQuery()

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

from Relation
Builder getBaseQuery()

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

from Relation
Model getParent()

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

from Relation
string getQualifiedParentKeyName()

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

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

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

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

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

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

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

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

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

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

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

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

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

array buildDictionary(Коллекция $results)

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

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

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

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

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

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

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

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

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

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

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

Traversable|array saveMany(Traversable|array $models)

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

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

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

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

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

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

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

int update(array $attributes)

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

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

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

string getRelationCountHash()

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

string getExistenceCompareKey()

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

mixed getParentKey()

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

string getForeignKeyName()

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

string getQualifiedForeignKeyName()

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

Подробности

static void macro(string $name, object|callable $macro)

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

Параметры

string $name
object|callable $macro

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

void

static void mixin(object $mixin)

Добавить другой объект в класс.

Параметры

object $mixin

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

void

static bool hasMacro(string $name)

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

Параметры

string $name

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

bool

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(Билддер $query, Модель $parent, string $foreignKey, string $localKey)

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

Параметры

Билддер $query
Модель $parent
string $foreignKey
string $localKey

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

void

static mixed noConstraints(Closure $callback)

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

Параметры

Closure $callback

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

mixed

void addConstraints()

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

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

void

void addEagerConstraints(array $models)

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

Параметры

array $models

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

void

abstract array initRelation(array $models, string $relation)

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

Параметры

array $models
string $relation

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

array

abstract array match(array $models, Collection $results, string $relation)

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

Параметры

array $models
Collection $results
string $relation

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

array

abstract mixed getResults()

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

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

mixed

Collection getEager()

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

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

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

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

Параметры

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

Model getRelated()

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

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

Model

string createdAt()

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

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

string

string updatedAt()

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

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

string

string relatedUpdatedAt()

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

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

string

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

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

Параметры

Массив $map
Булево $merge

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

Массив

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

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

Параметры

Массив $models

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

array|null

static string|null getMorphedModel(string $alias)

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

Параметры

Строка $alias

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

string|null

void __clone()

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

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

void

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

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

Параметры

Массив $attributes

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

Модель

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

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

Параметры

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

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

Массив

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

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

Параметры

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

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

Массив

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

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

Параметры

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

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

Массив

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

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

Параметры

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

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

mixed

protected array buildDictionary(Коллекция $results)

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

Параметры

Коллекция $results

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

Массив

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

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

Параметры

mixed $id
Массив $columns

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

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

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

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

Параметры

Массив $attributes
Массив $values

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

Модель

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

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

Параметры

Массив $attributes
Массив $values

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

Модель

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

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

Параметры

Массив $attributes
Массив $values

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

Модель

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

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

Параметры

Модель $model

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

Модель|false

Перечислимый|Массив saveMany(Перечислимый|Массив $models)

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

Параметры

Перечислимый|Массив $models

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

Перечислимый|Массив

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

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

Параметры

Массив $attributes

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

Модель

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

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

Параметры

array $records

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

Коллекция

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

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

Параметры

Модель $model

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

void

int update(array $attributes)

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

Параметры

array $attributes

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

int

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

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

Параметры

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

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

Билдер

string getRelationCountHash()

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

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

string

string getExistenceCompareKey()

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

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

string

mixed getParentKey()

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

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

mixed

string getForeignKeyName()

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

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

string

string getQualifiedForeignKeyName()

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

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

string

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

Spec-Zone.ru

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