Spec-Zone.ru › Laravel 5.8

HasOne

class HasOne extends HasOneOrMany (View source)

Свойства

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)

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

из ForwardsCalls
static void throwBadMethodCallException(string $method)

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

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

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

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

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

из Macroable
static bool hasMacro(string $name)

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

из Macroable
static mixed __callStatic(string $method, array $parameters)

Динамически обработать вызовы класса.

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

Динамически обработать вызовы класса.

из Macroable
void __construct(Builder $query, Model $parent, string $foreignKey, string $localKey)

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

из HasOneOrMany
static mixed noConstraints(Closure $callback)

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

из Relation
void addConstraints()

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

из HasOneOrMany
void addEagerConstraints(array $models)

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

из HasOneOrMany
array initRelation(array $models, string $relation)

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

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

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

mixed getResults()

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

Collection getEager()

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

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

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

из Relation
Builder getQuery()

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

из Relation
Builder getBaseQuery()

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

из Relation
Model getParent()

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

из Relation
string getQualifiedParentKeyName()

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

из HasOneOrMany
Model getRelated()

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

из Relation
string createdAt()

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

из Relation
string updatedAt()

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

из Relation
string relatedUpdatedAt()

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

из Relation
строка whereInMethod(Модель $model, строка $key)

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

из Связи
массив morphMap(массив $map = null, bool $merge = true)

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

из Связи
массив|null buildMorphMapFromModels(массив $models = null)

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

из Связи
строка|null getMorphedModel(строка $alias)

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

из Связи
void __clone()

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

из Связи
Модель make(массив $attributes = [])

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

из ОдинКОдномуИлиМногим
массив matchOne(массив $models, Коллекция $results, строка $relation)

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

из ОдинКОдномуИлиМногим
массив matchMany(массив $models, Коллекция $results, строка $relation)

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

из ОдинКОдномуИлиМногим
массив matchOneOrMany(массив $models, Коллекция $results, строка $relation, строка $type)

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

из ОдинКОдномуИлиМногим
смешанный getRelationValue(массив $dictionary, строка $key, строка $type)

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

из ОдинКОдномуИлиМногим
массив buildDictionary(Коллекция $results)

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

из ОдинКОдномуИлиМногим
Коллекция|Модель findOrNew(смешанный $id, массив $columns = ['*'])

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

из ОдинКОдномуИлиМногим
Модель firstOrNew(массив $attributes, массив $values = [])

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

из ОдинКОдномуИлиМногим
Модель firstOrCreate(массив $attributes, массив $values = [])

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

из ОдинКОдномуИлиМногим
Модель updateOrCreate(массив $attributes, массив $values = [])

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

из ОдинКОдномуИлиМногим
Модель|false save(Модель $model)

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

из ОдинКОдномуИлиМногим
итерируемый saveMany(итерируемый $models)

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

из ОдинКОдномуИлиМногим
Модель create(массив $attributes = [])

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

из ОдинКОдномуИлиМногим
Коллекция createMany(массив $records)

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

из ОдинКОдномуИлиМногим
void setForeignAttributesForCreate(Модель $model)

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

из ОдинКОдномуИлиМногим
Билдер getRelationExistenceQueryForSelfRelation(Билдер $query, Билдер $parentQuery, массив|смешанный $columns = ['*'])

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

из ОдинКОдномуИлиМногим
строка getRelationCountHash()

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

из ОдинКОдномуИлиМногим
строка getExistenceCompareKey()

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

из ОдинКОдномуИлиМногим
смешанный getParentKey()

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

из ОдинКОдномуИлиМногим
строка getForeignKeyName()

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

из ОдинКОдномуИлиМногим
строка getQualifiedForeignKeyName()

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

из ОдинКОдномуИлиМногим
string getLocalKeyName()

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

из HasOneOrMany
Модель newRelatedInstanceFor(Модель $parent)

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

$this withDefault(Closure|массив|bool $callback = true)

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

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

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

из SupportsDefaultModels

Подробности

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

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

Параметры

mixed $object
string $method
массив $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, 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
массив $parameters

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

mixed

Исключения

BadMethodCallException

mixed __call(string $method, array $parameters)

Динамически обработать вызовы класса.

Параметры

string $method
массив $parameters

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

mixed

Исключения

BadMethodCallException

void __construct(Builder $query, Модель $parent, string $foreignKey, string $localKey)

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

Параметры

Builder $query
Модель $parent
string $foreignKey
string $localKey

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

void

static mixed noConstraints(Closure $callback)

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

Параметры

Closure $callback

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

mixed

void addConstraints()

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

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

void

void addEagerConstraints(array $models)

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

Параметры

массив $models

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

void

массив initRelation(массив $models, string $relation)

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

Параметры

массив $models
string $relation

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

массив

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

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

Параметры

массив $models
Коллекция $results
string $relation

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

массив

mixed getResults()

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

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

mixed

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

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

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

Коллекция
END_OF_DOCUMENT_MARKER

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

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

Параметры

array $columns

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

Коллекция

void touch()

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

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

void

int rawUpdate(array $attributes = [])

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

Параметры

array $attributes

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

int

Билдер getRelationExistenceCountQuery(Билдер $query, Билдер $parentQuery)

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

Параметры

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

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

Билдер

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

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

Параметры

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

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

Билдер

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

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

Параметры

array $models
string $key

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

array

Билдер getQuery()

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

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

Билдер

Билдер getBaseQuery()

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

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

Билдер

Модель getParent()

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

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

Модель

string getQualifiedParentKeyName()

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

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

string

Модель getRelated()

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

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

Модель

string createdAt()

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

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

string

string updatedAt()

Получить имя колонки «обновлено в».

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

string

string relatedUpdatedAt()

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

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

string

protected string whereInMethod(Модель $model, string $key)

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

Параметры

Модель $model
string $key

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

string

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

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

Параметры

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

массив matchMany(массив $models, Коллекция $results, строка $relation)

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

Параметры

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

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

массив

protected массив matchOneOrMany(массив $models, Коллекция $results, строка $relation, строка $type)

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

Параметры

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

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

массив

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

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

Параметры

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

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

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

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

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

Параметры

Коллекция $results

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

массив

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

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

Параметры

смешанный тип $id
массив $columns

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

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

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

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

Параметры

массив $attributes
массив $values

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

Модель

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

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

Параметры

массив $attributes
массив $values

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

Модель

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

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

Параметры

массив $attributes
массив $values

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

Модель

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

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

Параметры

Модель $model

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

Модель|ложь

итерируемый объект saveMany(итерируемый объект $models)

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

Параметры

итерируемый объект $models

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

итерируемый объект

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

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

Параметры

массив $attributes

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

Модель

Коллекция createMany(массив $records)

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

Параметры

массив $records

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

Коллекция

protected ничего setForeignAttributesForCreate(Модель $model)

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

Параметры

Модель $model

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

ничего

Билдер getRelationExistenceQueryForSelfRelation(Билдер $query, Билдер $parentQuery, массив|смешанный тип $columns = ['*'])

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

Параметры

Билдер $query
Билдер $parentQuery
массив|смешанный тип $columns

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

Билдер

строка getRelationCountHash()

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

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

строка

строка getExistenceCompareKey()

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

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

строка

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

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

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

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

string getForeignKeyName()

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

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

string

string getQualifiedForeignKeyName()

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

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

string

string getLocalKeyName()

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

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

string

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

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

Параметры

Модель $parent

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

Модель

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

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

Параметры

Closure|array|bool $callback

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

$this

protected Модель|null getDefaultFor(Модель $parent)

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

Параметры

Модель $parent

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

Модель|null

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

Spec-Zone.ru

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