Связь
абстрактный класс Связь (Просмотреть исходный код)
Трейты
| ForwardsCalls |
| Macroable |
Свойства
| статический защищенный массив | $macros | Зарегистрированные строковые макросы. | из Macroable |
| защищенный Builder | $query | Экземпляр Eloquent-строителя запросов. | |
| защищенный Model | $parent | Экземпляр родительской модели. | |
| защищенный Model | $related | Экземпляр связанной модели. | |
| статический защищенный bool | $constraints | Указывает, добавляет ли связь ограничения. | |
| статический массив | $morphMap | Массив для сопоставления имен классов с их именами морфинг в базе данных. |
Методы
| смешанный | forwardCallTo(смешанный $object, строка $method, массив $parameters) Перенаправить вызов метода заданному объекту. | из ForwardsCalls |
| статический void | throwBadMethodCallException(строка $method) Выбросить исключение плохого вызова метода для данного метода. | из ForwardsCalls |
| статический void | macro(строка $name, объект|вызываемый $macro) Зарегистрировать пользовательский макрос. | из Macroable |
| статический void | mixin(объект $mixin) Смешать другой объект в класс. | из Macroable |
| статический bool | hasMacro(строка $name) Проверяет, зарегистрирован ли макрос. | из Macroable |
| статический смешанный | __callStatic(строка $method, массив $parameters) Динамически обрабатывать вызовы класса. | из Macroable |
| смешанный | __call(строка $method, массив $parameters) Обработать динамические вызовы метода к связи. | |
| void | __construct(Builder $query, Model $parent) Создать новый экземпляр связи. | |
| статический смешанный | noConstraints(Closure $callback) Выполнить обратный вызов с отключенными ограничениями по связи. | |
| void | addConstraints() Установить базовые ограничения в запросе связи. | |
| void | addEagerConstraints(массив $models) Установить ограничения для отложенной загрузки связи. | |
| массив | initRelation(массив $models, строка $relation) Инициализировать связь на наборе моделей. | |
| массив | match(массив $models, Collection $results, строка $relation) Сопоставить загруженные результаты с их родителями. | |
| смешанный | getResults() Получить результаты связи. | |
| Collection | getEager() Получить связь для отложенной загрузки. | |
| Collection | get(массив $columns = ['*']) Выполнить запрос как оператор «select». | |
| void | touch() Обновить все связанные модели для связи. | |
| целое число | rawUpdate(массив $attributes = []) Выполнить необработанное обновление для базового запроса. | |
| Builder | getRelationExistenceCountQuery(Builder $query, Builder $parentQuery) Добавить ограничения для запроса подсчета существования связи. | |
| Builder | getRelationExistenceQuery(Builder $query, Builder $parentQuery, массив|смешанный $columns = ['*']) Добавить ограничения для внутреннего запроса существования связи. | |
| массив | getKeys(массив $models, строка $key = null) Получить все первичные ключи для массива моделей. | |
| Builder | getQuery() Получить базовый запрос для связи. | |
| Builder | getBaseQuery() Получить базовый билдер запросов, управляющий билдером Eloquent. | |
| Model | getParent() Получить родительскую модель связи. | |
| строка | getQualifiedParentKeyName() Получить полностью квалифицированное имя родительского ключа. | |
| Model | getRelated() Получить связанную модель связи. | |
| строка | createdAt() Получить имя столбца «создано в». | |
| строка | updatedAt() Получить имя столбца «обновлено в». | |
| строка | relatedUpdatedAt() Получить имя столбца «обновлено в» связанной модели. | |
| статический массив | morphMap(массив $map = null, bool $merge = true) Установить или получить морф-мапу для полиморфных связей. | |
| статический массив|null | buildMorphMapFromModels(массив $models = null) Создаёт таблично-ключевой массив из имён классов моделей. | |
| статическая строка|null | getMorphedModel(строка $alias) Получить модель, связанную с пользовательским полиморфным типом. | |
| void | __clone() Принудительно клонировать базовый билдер запроса при клонировании. |
Подробности
protected смешанный forwardCallTo(смешанный $object, строка $method, массив $parameters)
Перенаправить вызов метода заданному объекту.
static protected void throwBadMethodCallException(строка $method)
Выбросить исключение плохого вызова метода для данного метода.
статический void macro(string $name, object|callable $macro)
Зарегистрировать пользовательское макрокоманду.
статический void mixin(object $mixin)
Добавить другой объект в класс.
статический bool hasMacro(string $name)
Проверить, зарегистрирована ли макрокоманда.
статический mixed __callStatic(string $method, array $parameters)
Динамически обработать вызовы класса.
mixed __call(string $method, array $parameters)
Обработка динамических вызовов методов отношения.
статический 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 = ['*'])
Добавить ограничения для внутреннего запроса существования отношения.
В основном, эти запросы сравниваются по именам столбцов, как whereColumn.
protected array getKeys(array $models, string $key = null)
Получить все первичные ключи для массива моделей.
Builder getQuery()
Получить базовое запрошенное представление для отношения.
Builder getBaseQuery()
Получить базовый конструктор запроса, управляющий конструктором Eloquent.
Модель getParent()
Получить родительскую модель отношения.
string getQualifiedParentKeyName()
Получить полное имя родительского ключа.
Модель getRelated()
Получить связанную модель отношения.
string createdAt()
Получить имя столбца «создано в».
string updatedAt()
Получить имя столбца «обновлено в».
string relatedUpdatedAt()
Получить имя столбца «обновлено в» для связанной модели.
static array morphMap(array $map = null, bool $merge = true)
Установить или получить карту морфинга для полиморфных отношений.
static protected array|null buildMorphMapFromModels(array $models = null)
Создает таблично-индексированный массив из имен классов моделей.
static string|null getMorphedModel(string $alias)
Получить модель, связанную с пользовательским полиморфным типом.
void __clone()
Принудительно клонировать базовый конструктор запроса при клонировании.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.7/Illuminate/Database/Eloquent/Relations/Relation.html