Spec-Zone.ru › Laravel 5.5

Связь

класс Relation (View source)

Черты

Macroable

Свойства

static protected array $macros Зарегистрированные строковые макросы. из Macroable
protected Builder $query Экземпляр построителя запросов Eloquent.
protected Model $parent Экземпляр родительской модели.
protected Model $related Экземпляр связанной модели.
static protected bool $constraints Указывает, добавляет ли отношение ограничения.
static protected array $morphMap Массив для сопоставления имен классов с их морф-именами в базе данных.

Методы

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

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

из Macroable
static void mixin(object $mixin)

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

из Macroable
static bool hasMacro(string $name)

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

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

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

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

Обработка динамических вызовов методов для связи.

void __construct(Builder $query, Model $parent)

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

static mixed noConstraints(Closure $callback)

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

void addConstraints()

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

void addEagerConstraints(array $models)

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

array initRelation(array $models, string $relation)

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

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

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

mixed getResults()

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

Collection getEager()

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

Collection get(array $columns = ['*'])

Выполнить запрос как оператор "select".

void touch()

Затронуть все связанные модели для отношения.

int rawUpdate(array $attributes = [])

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

Builder getRelationExistenceCountQuery(Builder $query, Builder $parentQuery)

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

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

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

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

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

Builder getQuery()

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

Builder getBaseQuery()

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

Model getParent()

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

string getQualifiedParentKeyName()

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

Model getRelated()

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

string createdAt()

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

string updatedAt()

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

string relatedUpdatedAt()

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

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

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

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

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

static string|null getMorphedModel(string $alias)

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

void __clone()

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

Подробности

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

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

Параметры

string $name
object|callable $macro

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

void
END_OF_DOCUMENT_MARKER

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

void __construct(Builder $query, Model $parent)

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

Параметры

Builder $query
Model $parent

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

void

static mixed noConstraints(Closure $callback)

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

Параметры

Closure $callback

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

mixed

abstract void addConstraints()

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

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

void

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

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

Параметры

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

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

По существу, эти запросы сравнивают по именам столбцов, например, whereColumn.

Параметры

Builder $query
Builder $parentQuery
array|mixed $columns

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

Builder

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

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

Параметры

array $models
string $key

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

array

Builder getQuery()

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

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

Builder

Построитель запросов getBaseQuery()

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

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

Построитель запросов

Модель getParent()

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

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

Модель

строка getQualifiedParentKeyName()

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

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

строка

Модель getRelated()

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

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

Модель

строка createdAt()

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

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

строка

строка updatedAt()

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

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

строка

строка relatedUpdatedAt()

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

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

строка

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

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

Параметры

массив $map
bool $merge

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

массив

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

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

Параметры

массив $models

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

массив|null

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

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

Параметры

строка $alias

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

строка|null

пусто __clone()

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

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

пусто

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

Spec-Zone.ru

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