Spec-Zone.ru › Laravel 5.4

HasOne

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

Свойства

SupportsDefaultModels
Macroable

Свойства

статический защищённый массив $macros Зарегистрированные строковые макросы. из Macroable
защищённый Builder $query Экземпляр Eloquent-строителя запросов. из Relation
защищённый Model $parent Экземпляр родительской модели. из Relation
защищённый Model $related Экземпляр связанной модели. из Relation
статический защищённый булево значение $constraints Указывает, добавляет ли отношение ограничения. из Relation
статический защищённый массив $morphMap Массив для сопоставления имён классов с их именами морфингов в базе данных. из Relation
защищённый строковый тип $foreignKey Внешний ключ родительской модели. из HasOneOrMany
защищённый строковый тип $localKey Локальный ключ родительской модели. из HasOneOrMany
статический защищённый целочисленный тип $selfJoinCount Количество самосоединений. из HasOneOrMany
защищённый Closure|массив|булево значение $withDefault Указывает, должен ли использоваться экземпляр модели по умолчанию. из SupportsDefaultModels

Методы

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

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

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

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

Collection getEager()

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

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

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

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

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

from Relation
string relatedUpdatedAt()

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

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
Коллекция|Модель findOrNew(mixed $id, array $columns = ['*'])

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

из HasOneOrMany
Модель firstOrNew(array $attributes)

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

из HasOneOrMany
Модель firstOrCreate(array $attributes)

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

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

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

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

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

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

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

из HasOneOrMany
Модель create(array $attributes)

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

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

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

из HasOneOrMany
целое число update(array $attributes)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

из SupportsDefaultModels

Детали

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

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

Параметры

строка $name
вызываемый объект $macro

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

void

статический bool hasMacro(string $name)

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

Параметры

string $name

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

bool

статический смешанный __callStatic(string $method, array $parameters)

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

Параметры

string $method
array $parameters

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

смешанный

Исключения

BadMethodCallException

смешанный __call(string $method, array $parameters)

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

Параметры

string $method
array $parameters

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

смешанный

Исключения

BadMethodCallException

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

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

Параметры

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

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

void

статический смешанный noConstraints(Closure $callback)

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

Параметры

Closure $callback

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

смешанный

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

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

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

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

смешанный

Collection getEager()

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

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

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

защищённый array getKeys(array $models, string $key = null)

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

Параметры

array $models
string $key

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

array

Builder getQuery()

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

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

Builder

Builder getBaseQuery()

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

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

Builder

Model getParent()

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

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

Model

строка getQualifiedParentKeyName()

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

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

строка

Модель getRelated()

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

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

Модель

строка createdAt()

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

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

строка

строка updatedAt()

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

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

строка

строка relatedUpdatedAt()

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

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

строка

статический массив morphMap(array $map = null, bool $merge = true)

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

Параметры

массив $map
булево $merge

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

массив

статический защищённый массив|null buildMorphMapFromModels(array $models = null)

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

Параметры

массив $models

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

массив|null

статический строка|null getMorphedModel(string $alias)

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

Параметры

строка $alias

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

строка|null

пустое значение __clone()

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

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

пустое значение

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

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

Параметры

массив $attributes

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

Модель

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

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

Параметры

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

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

массив

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

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

Параметры

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

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

массив

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

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

Параметры

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

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

массив

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

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

Параметры

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

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

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

защищённый массив buildDictionary(Коллекция $results)

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

Параметры

Коллекция $results

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

массив

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

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

Параметры

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

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

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

Модель firstOrNew(array $attributes)

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

Параметры

массив $attributes

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

Модель

Модель firstOrCreate(array $attributes)

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

Параметры

массив $attributes

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

Модель

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

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

Параметры

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

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

Модель
END_OF_DOCUMENT_MARKER

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

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

Параметры

Модель $model

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

Модель|false

Итерируемый объект|массив saveMany(Итерируемый объект|массив $models)

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

Параметры

Итерируемый объект|массив $models

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

Итерируемый объект|массив

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

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

Параметры

массив $attributes

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

Модель

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

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

Параметры

массив $records

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

Коллекция

int update(массив $attributes)

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

Параметры

массив $attributes

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

int

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

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

Параметры

Библиотека $query
Библиотека $parentQuery
массив|смешанный $columns

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

Библиотека

строка getRelationCountHash()

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

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

строка

строка getExistenceCompareKey()

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

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

строка

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

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

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

смешанный

строка getForeignKeyName()

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

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

строка

строка getQualifiedForeignKeyName()

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

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

строка

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

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

Параметры

Модель $parent

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

Модель

$this withDefault(Замыкание|массив|bool $callback = true)

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

Параметры

Замыкание|массив|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.4/Illuminate/Database/Eloquent/Relations/HasOne.html

Spec-Zone.ru

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