Spec-Zone.ru › Laravel 5.4

HasManyThrough

класс HasManyThrough расширяет Relation (View source)

Трейты

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 protected array $morphMap Массив для сопоставления имён классов с их именами морфинг в базе данных. from Relation
protected Model $throughParent Экземпляр родительской модели «через».
protected Model $farParent Экземпляр удалённой родительской модели.
protected string $firstKey Ближайший ключ в отношении.
protected string $secondKey Удалённый ключ в отношении.
protected string $localKey Локальный ключ в отношении.

Методы

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 $farParent, Model $throughParent, string $firstKey, string $secondKey, string $localKey)

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

static mixed noConstraints(Closure $callback)

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

from Relation
void addConstraints()

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

void addEagerConstraints(array $models)

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

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

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

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 Relation
Модель getRelated()

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

из Отношение
строка createdAt()

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

из Отношение
строка updatedAt()

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

из Отношение
строка relatedUpdatedAt()

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

из Отношение
статический массив morphMap(массив $map = null, булево $merge = true)

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

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

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

из Отношение
статическая строка|null getMorphedModel(строка $alias)

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

из Отношение
void __clone()

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

from Relation
void performJoin(Builder $query = null)

Установить условие объединения в запросе.

bool throughParentSoftDeletes()

Определить, использует ли родительская сущность "через" мягкое удаление.

array buildDictionary(Collection $results)

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

Model firstOrNew(array $attributes)

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

Model updateOrCreate(array $attributes, array $values = [])

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

mixed first(array $columns = ['*'])

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

Model|HasManyThrough firstOrFail(array $columns = ['*'])

Выполнить запрос и получить первый результат или выбросить исключение.

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

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

Коллекция findMany(mixed $ids, array $columns = ['*'])

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

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

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

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

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

LengthAwarePaginator paginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page', int $page = null)

Получить разбиение на страницы для запроса "select".

Paginator simplePaginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null)

Разбить на страницы заданный запрос с помощью простого разбиения на страницы.

массив shouldSelect(array $columns = ['*'])

Установить предложение select для запроса к отношению.

строка getExistenceCompareKey()

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

строка getQualifiedFarKeyName()

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

строка getQualifiedForeignKeyName()

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

строка getQualifiedFirstKeyName()

Получить квалифицированное внешнее ключевое поле модели "через" (through).

Подробности

статический void macro(string $name, callable $macro)

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

Параметры

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

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

void

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

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

Параметры

строка $name

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

bool

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

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

Параметры

строка $method
массив $parameters

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

смешанный

Исключения

BadMethodCallException

mixed __call(string $method, array $parameters)

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

Параметры

string $method
array $parameters

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

mixed

Исключения

BadMethodCallException

void __construct(Builder $query, Model $farParent, Model $throughParent, string $firstKey, string $secondKey, string $localKey)

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

Параметры

Builder $query
Model $farParent
Model $throughParent
string $firstKey
string $secondKey
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)

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

Параметры

array $models
Collection $results
string $relation

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

array

mixed getResults()

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

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

mixed

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

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

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

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

string

string updatedAt()

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

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

string

string relatedUpdatedAt()

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

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

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

protected void performJoin(Builder $query = null)

Установить условие объединения в запросе.

Параметры

Builder $query

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

void

bool throughParentSoftDeletes()

Определить, использует ли «родительский» элемент отношения мягкие удаления.

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

bool

protected array buildDictionary(Collection $results)

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

Параметры

Collection $results

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

array

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

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

Параметры

array $attributes

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

Модель

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

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

Параметры

array $attributes
array $values

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

Модель

mixed first(array $columns = ['*'])

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

Параметры

Массив $columns

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

mixed

Модель|HasManyThrough firstOrFail(array $columns = ['*'])

Выполнить запрос и получить первый результат или сгенерировать исключение.

Параметры

Массив $columns

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

Модель|HasManyThrough

Исключения

ModelNotFoundException

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

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

Параметры

mixed $id
Массив $columns

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

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

Коллекция findMany(mixed $ids, array $columns = ['*'])

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

Параметры

mixed $ids
array $columns

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

Коллекция

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

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

Параметры

mixed $id
array $columns

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

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

Исключения

ModelNotFoundException

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

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

Параметры

array $columns

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

Коллекция

LengthAwarePaginator paginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page', int $page = null)

Получить пагинатор для оператора "select".

Параметры

int $perPage
array $columns
string $pageName
int $page

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

LengthAwarePaginator

Paginator simplePaginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null)

Разбить заданный запрос на страницы с помощью простого пагинатора.

Параметры

int $perPage
array $columns
string $pageName
int|null $page

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

Paginator

protected array shouldSelect(array $columns = ['*'])

Установить предложение select для запроса отношения.

Параметры

array $columns

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

array

string getExistenceCompareKey()

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

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

string

string getQualifiedFarKeyName()

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

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

string

string getQualifiedForeignKeyName()

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

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

string

string getQualifiedFirstKeyName()

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

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

string

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

Spec-Zone.ru

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