MorphOneOrMany
class MorphOneOrMany extends HasOneOrMany (View source)
Свойства
| protected Builder | $query | Экземпляр Eloquent-объекта для построения запросов. | from Relation |
| protected Model | $parent | Экземпляр родительской модели. | from Relation |
| protected Model | $related | Экземпляр связанной модели. | from Relation |
| static protected bool | $constraints | Указывает, добавляет ли отношение ограничения. | from Relation |
| protected string | $foreignKey | Внешний ключ родительской модели. | from HasOneOrMany |
| protected string | $localKey | Локальный ключ родительской модели. | from HasOneOrMany |
| protected string | $morphType | Тип внешнего ключа для отношения. | |
| protected string | $morphClass | Имя класса родительской модели. |
Методы
| void | __construct(Builder $query, Model $parent, string $type, string $id, string $localKey) Создать новый экземпляр отношения "многие ко многим". | |
| void | addConstraints() Установить базовые ограничения на запрос отношения. | |
| void | addEagerConstraints(array $models) Установить ограничения для жадной загрузки отношения. | |
| array | initRelation(array $models, string $relation) Инициализировать отношение для набора моделей. | из Relation |
| array | match(array $models, Collection $results, string $relation) Сопоставить загруженные с жадностью результаты с их родителями. | из Relation |
| mixed | getResults() Получить результаты отношения. | из Relation |
| Collection | getEager() Получить отношение для жадной загрузки. | из Relation |
| void | touch() Обновить метку времени для всех связанных моделей отношения. | из Relation |
| int | rawUpdate(array $attributes = array()) Выполнить прямое обновление базового запроса. | из 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() Получить полностью квалифицированное имя родительского ключа. | из HasOneOrMany |
| Model | getRelated() Получить связанную модель отношения. | из Relation |
| string | createdAt() Получить имя колонки "created at". | из Relation |
| string | updatedAt() Получить имя колонки "updated at". | из Relation |
| string | relatedUpdatedAt() Получить имя колонки "updated at" связанной модели. | из Relation |
| string | wrap(string $value) Оборачивает заданное значение с помощью грамматики родительского запроса. | из Relation |
| mixed | __call(string $method, array $parameters) Обрабатывает динамические вызовы методов для отношения. | из Relation |
| array | matchOne(array $models, Collection $results, string $relation) Сопоставить загруженные с жадностью результаты с их единственным родителем. | из HasOneOrMany |
| array | matchMany(array $models, Collection $results, string $relation) Сопоставить загруженные с жадностью результаты с их многими родителями. | из HasOneOrMany |
| array | matchOneOrMany(array $models, Collection $results, string $relation, string $type) Сопоставить загруженные с жадностью результаты с их многими родителями. | из HasOneOrMany |
| mixed | getRelationValue(array $dictionary, string $key, string $type) Получить значение отношения по типу "один ко многим" или "многие ко многим". | из HasOneOrMany |
| array | buildDictionary(Collection $results) Создать словарь моделей, индексированный по внешнему ключу отношения. | из HasOneOrMany |
| Model | save(Model $model) Привязать экземпляр модели к родительской модели. | |
| array | saveMany(array $models) Привязать массив моделей к родительскому экземпляру. | из HasOneOrMany |
| Model | create(array $attributes) Создать новый экземпляр связанной модели. |
| массив | createMany(массив $records) Создаёт массив новых экземпляров связанной модели. | из HasOneOrMany |
| целое | update(массив $attributes) Выполняет обновление всех связанных моделей. | из HasOneOrMany |
| строка | getHasCompareKey() Получает ключ для сравнения с ключом родительской модели в запросе «has». | из HasOneOrMany |
| строка | getForeignKey() Получить внешний ключ для связи. | из HasOneOrMany |
| строка | getPlainForeignKey() Получить простой внешний ключ. | из HasOneOrMany |
| смешанное | getParentKey() Получить значение ключа родительского локального ключа. | из HasOneOrMany |
| void | setForeignAttributesForCreate(Model $model) Устанавливает внешний идентификатор и тип для создания связанной модели. | |
| строка | getMorphType() Получить имя внешнего ключа «тип». | |
| строка | getPlainMorphType() Получить простое имя морф-типа без таблицы. | |
| строка | getMorphClass() Получить имя класса родительской модели. |
Подробности
void __construct(Builder $query, Model $parent, string $type, string $id, string $localKey)
Создаёт новый экземпляр связи «has many».
void addConstraints()
Устанавливает базовые ограничения в запросе отношения.
void addEagerConstraints(array $models)
Устанавливает ограничения для жадной загрузки отношения.
abstract массив initRelation(массив $models, строка $relation)
Инициализирует отношение для набора моделей.
abstract массив match(массив $models, Collection $results, строка $relation)
Сопоставляет загруженные с жадной загрузкой результаты с их родителями.
abstract смешанное getResults()
Получить результаты отношения.
Collection getEager()
Получить отношение для жадной загрузки.
void touch()
Обновить все связанные модели для отношения.
целое rawUpdate(массив $attributes = массив())
Выполнить сырое обновление на основе основного запроса.
static смешанное noConstraints(Closure $callback)
Выполнить обратный вызов без ограничений для отношения.
protected массив getKeys(массив $models, строка $key = null)
Получить все первичные ключи для массива моделей.
Builder getQuery()
Получить базовой запрос для отношения.
Builder getBaseQuery()
Получить базовый билдер запроса, управляющий билдером Eloquent.
Модель getParent()
Получить родительскую модель отношения.
string getQualifiedParentKeyName()
Получить полное квалифицированное имя родительского ключа.
Модель getRelated()
Получить связанную модель отношения.
string createdAt()
Получить имя столбца "created at".
string updatedAt()
Получить имя столбца "updated at".
string relatedUpdatedAt()
Получить имя столбца "updated at" связанной модели.
string wrap(string $value)
Оборачивание заданного значения с помощью синтаксиса родительского запроса.
mixed __call(string $method, array $parameters)
Обработка динамических вызовов метода для отношения.
array matchOne(array $models, Коллекция $results, string $relation)
Сопоставление загруженных результатов с их единственными родителями.
array matchMany(array $models, Коллекция $results, string $relation)
Сопоставление загруженных результатов со многими родителями.
protected array matchOneOrMany(array $models, Коллекция $results, string $relation, string $type)
Сопоставление загруженных результатов со многими родителями.
protected mixed getRelationValue(array $dictionary, string $key, string $type)
Получение значения отношения по типу "один" или "многие".
protected array buildDictionary(Коллекция $results)
Создание словаря модели, индексированного по внешнему ключу отношения.
array saveMany(array $models)
Присоединение массива моделей к экземпляру родительской модели.
Модель create(array $attributes)
Создание нового экземпляра связанной модели.
array createMany(array $records)
Создание массива новых экземпляров связанной модели.
int update(array $attributes)
Выполнение обновления всех связанных моделей.
string getHasCompareKey()
Получить ключ для сравнения с родительским ключом в запросе "has".
string getForeignKey()
Получить внешний ключ для отношения.
string getPlainForeignKey()
Получить простой внешний ключ.
mixed getParentKey()
Получить значение ключа родительского локального ключа.
protected void setForeignAttributesForCreate(Модель $model)
Установить внешний ID и тип для создания связанной модели.
string getMorphType()
Получить имя внешнего ключа "тип".
string getPlainMorphType()
Получить простое имя типа морфинга без таблицы.
string getMorphClass()
Получить имя класса родительской модели.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/4.2/Illuminate/Database/Eloquent/Relations/MorphOneOrMany.html