Spec-Zone.ru › Laravel 5.7

HasOne

класс HasOne расширяет HasOneOrMany (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 Closure|array|bool $withDefault Указывает, следует ли использовать экземпляр модели по умолчанию. from SupportsDefaultModels

Методы

mixed forwardCallTo(mixed $object, string $method, array $parameters)

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

from ForwardsCalls
static void throwBadMethodCallException(string $method)

Выбросить исключение bad method call для указанного метода.

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

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

from HasOneOrMany
static mixed noConstraints(Closure $callback)

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

from Relation
void addConstraints()

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

from HasOneOrMany
void addEagerConstraints(array $models)

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

from HasOneOrMany
array initRelation(array $models, string $relation)

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

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

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

mixed getResults()

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

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

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

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

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

из Relation
void touch()

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

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

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

из Relation
Builder getRelationExistenceCountQuery(Builder $query, Builder $parentQuery)

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

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

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

из HasOneOrMany
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()

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

from Relation
string relatedUpdatedAt()

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

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
массив matchOne(массив $models, Collection $results, строка $relation)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

из 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)

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

from HasOneOrMany
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
Модель newRelatedInstanceFor(Модель $parent)

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

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

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

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

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

из SupportsDefaultModels

Подробности

protected mixed forwardCallTo(mixed $object, string $method, array $parameters)

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

Параметры

mixed $object
string $method
array $parameters

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

mixed

Исключения

BadMethodCallException

static protected void throwBadMethodCallException(string $method)

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

Параметры

string $method

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

void

Исключения

BadMethodCallException

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

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

Параметры

string $name
object|callable $macro

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

void

static void mixin(object $mixin)

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

Параметры

object $mixin

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

void

Исключения

ReflectionException

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

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

Параметры

Builder $query
Model $parent
string $foreignKey
string $localKey

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

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

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

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

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

Коллекция

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

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

Параметры

array $columns

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

Коллекция

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

Билдер getQuery()

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

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

Билдер

Билдер getBaseQuery()

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

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

Билдер

Модель getParent()

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

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

Модель

строка getQualifiedParentKeyName()

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

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

строка

Модель getRelated()

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

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

Модель

строка createdAt()

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

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

строка

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)

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

Параметры

string $alias

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

string|null

void __clone()

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

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

void

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

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

Параметры

array $attributes

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

Модель

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

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

Параметры

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

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

array

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

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

Параметры

array $models
Коллекция $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

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

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

Параметры

mixed $id
array $columns

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

Collection|Модель

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

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

Параметры

array $attributes
array $values

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

Модель

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

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

Параметры

array $attributes
array $values

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

Модель

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

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

Параметры

array $attributes
array $values

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

Модель

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

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

Параметры

Модель $model

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

Модель|false

Traversable|array saveMany(Traversable|array $models)

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

Параметры

Traversable|array $models

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

Traversable|array

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

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

Параметры

array $attributes

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

Модель

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

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

Параметры

array $records

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

Коллекция

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

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

Параметры

Модель $model

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

void

int update(array $attributes)

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

Параметры

array $attributes

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

int

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

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

Параметры

Builder $query
Builder $parentQuery
array|mixed $columns

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

Builder

string getRelationCountHash()

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

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

string

string getExistenceCompareKey()

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

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

string

mixed getParentKey()

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

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

mixed

string getForeignKeyName()

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

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

string

строка getQualifiedForeignKeyName()

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

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

строка

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

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

Параметры

Модель $parent

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

Модель

$this withDefault(Замыкание|массив|логическое $callback = true)

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

Параметры

Замыкание|массив|логическое $callback

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

$this

защищенное Модель|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/HasOne.html

Spec-Zone.ru

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