Spec-Zone.ru › Laravel 6

HasOne

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

Трейты

SupportsDefaultModels
ForwardsCalls
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 array $morphMap

Массив для сопоставления имён классов с их именами морф в базе данных.

from Relation
protected string $foreignKey

Внешний ключ родительской модели.

from HasOneOrMany
protected string $localKey

Локальный ключ родительской модели.

from HasOneOrMany
static protected int $selfJoinCount

Количество самосоединений.

from HasOneOrMany
protected Closure|array|bool $withDefault

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

from SupportsDefaultModels

Методы

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

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

from ForwardsCalls
static void throwBadMethodCallException(string $method)

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

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

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

from Macroable
static void mixin(object $mixin, bool $replace = true)

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

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

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

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

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

из Отношения
void touch()

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

из Отношения
int rawUpdate(array $attributes = [])

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

из Отношения
Строитель getRelationExistenceCountQuery(Строитель $query, Строитель $parentQuery)

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

из Отношения
Строитель getRelationExistenceQuery(Строитель $query, Строитель $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()

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

from HasOneOrMany
Model getRelated()

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

from Relation
string createdAt()

Получить имя колонки "created at".

from Relation
string updatedAt()

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

from Relation
string relatedUpdatedAt()

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

from Relation
string whereInMethod(Model $model, string $key)

Получить имя метода "where in" для леничной загрузки.

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

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

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

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

из HasOneOrMany
массив matchOne(array $models, Коллекция $results, string $relation)

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

из HasOneOrMany
массив matchMany(array $models, Коллекция $results, string $relation)

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

из HasOneOrMany
массив matchOneOrMany(array $models, Коллекция $results, string $relation, string $type)

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

из HasOneOrMany
смешанный getRelationValue(array $dictionary, string $key, string $type)

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

из HasOneOrMany
массив buildDictionary(Коллекция $results)

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

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

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

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

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

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

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

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

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

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

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

from HasOneOrMany
iterable saveMany(iterable $models)

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

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

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

из HasOneOrMany
Коллекция createMany(iterable $records)

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

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

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

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

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

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

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

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

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

из HasOneOrMany
mixed getParentKey()

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

from HasOneOrMany
string getForeignKeyName()

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

from HasOneOrMany
string getQualifiedForeignKeyName()

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

from HasOneOrMany
string getLocalKeyName()

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

from HasOneOrMany
Model newRelatedInstanceFor(Model $parent)

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

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

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

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

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

Параметры

string $method

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

void

Исключения

BadMethodCallException

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

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

Параметры

string $name
object|callable $macro

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

void

static void mixin(object $mixin, bool $replace = true)

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

Параметры

object $mixin
bool $replace

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

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)

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

Параметры

array $models
Collection $results
string $relation

Значение результата

array

mixed getResults()

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

Значение результата

mixed

Collection getEager()

Получить отношение для eager loading.

Значение результата

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

Модель getParent()

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

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

Модель

string getQualifiedParentKeyName()

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

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

string

Модель getRelated()

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

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

Модель

string createdAt()

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

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

string

string updatedAt()

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

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

string

string relatedUpdatedAt()

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

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

string

protected string whereInMethod(Model $model, string $key)

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

Параметры

Model $model
string $key

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

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)

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

Параметры

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

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

array

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

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

Параметры

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

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

array

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

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

Parameters

array $models
Collection $results
string $relation
string $type

Return Value

array

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

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

Parameters

array $dictionary
string $key
string $type

Return Value

mixed

protected array buildDictionary(Collection $results)

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

Parameters

Collection $results

Return Value

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

iterable saveMany(iterable $models)

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

Параметры

iterable $models

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

iterable

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

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

Параметры

array $attributes

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

Модель

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

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

Параметры

iterable $records

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

Коллекция

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

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

Параметры

Модель $model

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

void

Библиотека getRelationExistenceQueryForSelfRelation(Библиотека $query, Библиотека $parentQuery, array|mixed $columns = ['*'])

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

Параметры

Библиотека $query
Библиотека $parentQuery
array|mixed $columns

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

Библиотека

строка getRelationCountHash()

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

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

строка

string getExistenceCompareKey()

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

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

string

mixed getParentKey()

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

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

mixed

string getForeignKeyName()

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

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

string

string getQualifiedForeignKeyName()

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

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

string

string getLocalKeyName()

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

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

string

Model newRelatedInstanceFor(Model $parent)

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

Параметры

Model $parent

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

Model

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

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

Параметры

Closure|array|bool $callback

Значение, возвращаемое функцией

$this

protected Model|null getDefaultFor(Model $parent)

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

Параметры

Model $parent

Значение, возвращаемое функцией

Model|null

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

Spec-Zone.ru

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