MorphOne
class MorphOne extends MorphOneOrMany (View source)
Свойства
| protected Builder | $query | Экземпляр Eloquent билдера запросов. | из Relation |
| protected Model | $parent | Экземпляр родительской модели. | из Relation |
| protected Model | $related | Экземпляр связанной модели. | из Relation |
| static protected bool | $constraints | Указывает, добавляет ли отношение ограничения. | из Relation |
| protected string | $foreignKey | Внешний ключ родительской модели. | из HasOneOrMany |
| protected string | $localKey | Локальный ключ родительской модели. | из HasOneOrMany |
| protected string | $morphType | Тип внешнего ключа для связи. | из MorphOneOrMany |
| protected string | $morphClass | Имя класса родительской модели. | из MorphOneOrMany |
Методы
| void | __construct(Builder $query, Model $parent, string $type, string $id, string $localKey) Создать новый экземпляр отношения «многие ко многим». | from MorphOneOrMany |
| void | addConstraints() Установить базовые ограничения запроса отношения. | from MorphOneOrMany |
| void | addEagerConstraints(array $models) Установить ограничения для отложенной загрузки отношения. | from MorphOneOrMany |
| 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 = array()) Выполнить сырое обновление с использованием базового запроса. | from Relation |
| Builder | getRelationCountQuery(Builder $query, Builder $parent) Получить запрос для подсчёта отношения. | from MorphOneOrMany |
| static mixed | noConstraints(Closure $callback) Выполнить обратный вызов без ограничений для отношения. | from Relation |
| 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 HasOneOrMany |
| Model | getRelated() Получить связанную модель отношения. | from Relation |
| string | createdAt() Получить имя столбца «создано в». | from Relation |
| string | updatedAt() Получить имя столбца «обновлено в». | from Relation |
| string | relatedUpdatedAt() Получить имя столбца «обновлено в» для связанной модели. | from Relation |
| string | wrap(string $value) Оборачивает значение с использованием грамматики родительского запроса. | from Relation |
| mixed | __call(string $method, array $parameters) Обрабатывает вызовы динамических методов для отношения. | from Relation |
| array | matchOne(array $models, Collection $results, string $relation) Сопоставить результаты отложенной загрузки с их единственными родителями. | from HasOneOrMany |
| array | matchMany(array $models, Collection $results, string $relation) Сопоставить результаты отложенной загрузки с их многими родителями. | from HasOneOrMany |
| array | matchOneOrMany(array $models, Collection $results, string $relation, string $type) Сопоставить результаты отложенной загрузки с их многими родителями. | from HasOneOrMany |
| mixed | getRelationValue(array $dictionary, string $key, string $type) Получить значение отношения по типу «один или многие». | from HasOneOrMany |
| array | buildDictionary(Collection $results) Создать словарь модели, индексированный по внешнему ключу отношения. | from HasOneOrMany |
| Model | save(Model $model) Привязать экземпляр модели к родительской модели. | from MorphOneOrMany |
| array | saveMany(array $models) Привязать массив моделей к экземпляру родителя. | from HasOneOrMany |
| Модель | create(array $attributes) Создать новый экземпляр связанной модели. | из MorphOneOrMany |
| массив | createMany(array $records) Создать массив новых экземпляров связанной модели. | из HasOneOrMany |
| целое число | update(array $attributes) Выполнить обновление всех связанных моделей. | из HasOneOrMany |
| строка | getHasCompareKey() Получить ключ для сравнения с родительским ключом в запросе «has». | из HasOneOrMany |
| строка | getForeignKey() Получить внешний ключ для связи. | из HasOneOrMany |
| строка | getPlainForeignKey() Получить простой внешний ключ. | из HasOneOrMany |
| смешанный тип | getParentKey() Получить значение ключа родительского локального ключа. | из HasOneOrMany |
| void | setForeignAttributesForCreate(Модель $model) Установить внешний идентификатор и тип для создания связанной модели. | из MorphOneOrMany |
| строка | getMorphType() Получить имя внешнего ключа «тип». | из MorphOneOrMany |
| строка | getPlainMorphType() Получить простое имя морф-типа без таблицы. | из MorphOneOrMany |
| строка | getMorphClass() Получить имя класса родительской модели. | из MorphOneOrMany |
Подробности
void __construct(Builder $query, Модель $parent, string $type, string $id, string $localKey)
Создать новый экземпляр связи many to many.
void addConstraints()
Установить базовые ограничения на запрос отношения.
void addEagerConstraints(array $models)
Установить ограничения для леничной загрузки отношения.
array initRelation(array $models, string $relation)
Инициализировать отношение на наборе моделей.
array match(array $models, Collection $results, string $relation)
Сопоставить загруженные с жадностью результаты с их родителями.
mixed getResults()
Получить результаты отношения.
Collection getEager()
Получить отношение для леничной загрузки.
void touch()
Отметить все связанные модели для отношения.
int rawUpdate(array $attributes = array())
Выполнить необработанное обновление по основному запросу.
static mixed noConstraints(Closure $callback)
Выполнить обратный вызов с отключенными ограничениями по отношению.
protected 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" связанной модели.
string wrap(string $value)
Оборачивание заданного значения грамматикой родительского запроса.
mixed __call(string $method, array $parameters)
Обработка динамических вызовов метода для отношения.
array matchOne(array $models, Collection $results, string $relation)
Сопоставление результатов, загруженных с помощью eager loading, с их единственными родителями.
array matchMany(array $models, Collection $results, string $relation)
Сопоставление результатов, загруженных с помощью eager loading, со многими родителями.
protected array matchOneOrMany(array $models, Collection $results, string $relation, string $type)
Сопоставление результатов, загруженных с помощью eager loading, со многими родителями.
protected mixed getRelationValue(array $dictionary, string $key, string $type)
Получение значения отношения по типу "один" или "многие".
protected array buildDictionary(Collection $results)
Построение словаря моделей, индексированного по внешнему ключу отношения.
array saveMany(array $models)
Прикрепление массива моделей к родительскому экземпляру.
Model create(array $attributes)
Создание нового экземпляра связанной модели.
array createMany(array $records)
Создание массива новых экземпляров связанной модели.
int update(array $attributes)
Выполнение обновления всех связанных моделей.
string getHasCompareKey()
Получить ключ для сравнения с родительским ключом в запросе "has".
string getForeignKey()
Получить внешний ключ для связи.
string getPlainForeignKey()
Получить простой внешний ключ.
mixed getParentKey()
Получить значение ключа родительского локального ключа.
protected void setForeignAttributesForCreate(Model $model)
Установить внешний идентификатор и тип для создания связанной модели.
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/MorphOne.html