Spec-Zone.ru › Laravel 5.1

HasManyThrough

class HasManyThrough extends Relation (View source)

Свойства

protected Builder $query Экземпляр билдера запросов Eloquent. из Relation
protected Model $parent Экземпляр родительской модели. из Relation
protected Model $related Экземпляр связанной модели. из Relation
static protected bool $constraints Указывает, добавляет ли отношение ограничения. из Relation
static protected array $morphMap Массив для сопоставления имен классов с их именами морф в базе данных. из Relation
protected Model $farParent Экземпляр родительской модели на отдаленном уровне.
protected string $firstKey Ближайший ключ в отношении.
protected string $secondKey Отдаленный ключ в отношении.
protected string $localKey Локальный ключ в отношении.

Методы

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

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

void addConstraints()

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

void addEagerConstraints(array $models)

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

array initRelation(array $models, string $relation)

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

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

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

mixed getResults()

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

Collection getEager()

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

из Relation
void touch()

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

из Relation
int rawUpdate(array $attributes = [])

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

из Relation
Builder getRelationCountQuery(Builder $query, Builder $parent)

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

static mixed noConstraints(Closure $callback)

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

из Relation
array getKeys(array $models, string $key = null)

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

из Relation
Builder getQuery()

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

из Relation
Builder getBaseQuery()

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

из Relation
Model getParent()

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

из Relation
string getQualifiedParentKeyName()

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

из Relation
Model getRelated()

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

из Relation
string createdAt()

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

из Relation
string updatedAt()

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

из Relation
string relatedUpdatedAt()

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

из Relation
string wrap(string $value)

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

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

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

из Relation
static array|null buildMorphMapFromModels(array $models = null)

Создает массив таблиц по именам классов моделей.

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

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

из Relation
void __clone()

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

из Relation
void setJoin(Builder $query = null)

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

bool parentSoftDeletes()

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

array buildDictionary(Collection $results)

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

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

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

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

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

Model|Collection|null find(mixed $id, array $columns = ['*'])

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

Collection findMany(mixed $ids, array $columns = ['*'])

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

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

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

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

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

массив getSelectColumns(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')

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

строка getHasCompareKey()

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

строка getForeignKey()

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

строка getThroughKey()

Получить квалифицированный внешний ключ модели «через».

Подробности

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

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

Параметры

Builder $query
Model $farParent
Model $parent
строка $firstKey
строка $secondKey
строка $localKey

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

void

void addConstraints()

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

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

void

void addEagerConstraints(array $models)

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

Параметры

массив $models

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

void

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

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

Параметры

массив $models
строка $relation

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

массив

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

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

Параметры

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

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

массив

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

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

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

смешанный

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

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

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

Коллекция

void touch()

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

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

void

целое число rawUpdate(array $attributes = [])

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

Параметры

массив $attributes

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

целое число

Builder getRelationCountQuery(Builder $query, Builder $parent)

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

Параметры

Builder $query
Builder $parent

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

Builder

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

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

Параметры

Closure $callback

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

смешанный

защищенный массив getKeys(array $models, string $key = null)

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

Параметры

массив $models
строка $key

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

массив

Builder getQuery()

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

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

Builder

Builder getBaseQuery()

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

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

Builder

Модель getParent()

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

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

Модель

строка getQualifiedParentKeyName()

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

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

строка

Модель getRelated()

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

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

Модель

строка createdAt()

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

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

строка

строка updatedAt()

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

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

строка

строка relatedUpdatedAt()

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

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

строка

строка wrap(строка $value)

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

Параметры

строка $value

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

строка

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

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

Параметры

массив $map
bool $merge

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

массив

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

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

Параметры

массив $models

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

массив|null

смешанный __call(строка $method, массив $parameters)

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

Параметры

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

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

смешанный

пусто __clone()

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

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

пусто

защищённый пусто setJoin(Генератор $query = null)

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

Параметры

Генератор $query

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

пусто

логический parentSoftDeletes()

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

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

логический

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

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

Параметры

Коллекция $results

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

массив

смешанный first(массив $columns = ['*'])

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

Параметры

массив $columns

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

смешанный

Модель|HasManyThrough firstOrFail(массив $columns = ['*'])

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

Параметры

массив $columns

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

Модель|HasManyThrough

Исключения

ModelNotFoundException

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

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

Параметры

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

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

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

Коллекция findMany(смешанный $ids, массив $columns = ['*'])

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

Параметры

смешанный $ids
массив $columns

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

Коллекция

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

Поиск связанной модели по первичному ключу или возбуждение исключения.

Параметры

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

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

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

Исключения

ModelNotFoundException

Коллекция get(массив $columns = ['*'])

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

Параметры

массив $columns

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

Коллекция

защищённый массив getSelectColumns(массив $columns = ['*'])

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

Параметры

массив $columns

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

массив

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

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

Parameters

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

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

LengthAwarePaginator

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

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

Parameters

int $perPage
array $columns
string $pageName

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

Paginator

string getHasCompareKey()

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

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

string

string getForeignKey()

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

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

string

string getThroughKey()

Получить квалифицированный внешний ключ модели "through".

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

string

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

Spec-Zone.ru

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