HasRelationships
черта HasRelationships (View source)
Свойства
| protected array | $relations | Загруженные отношения для модели. | |
| protected array | $touches | Отношения, которые должны быть затронуты при сохранении. | |
| static array | $manyMethods | Методы отношений «многие ко многим». |
Методы
| HasOne | hasOne(string $related, string $foreignKey = null, string $localKey = null) Определить отношение «один к одному». | |
| MorphOne | morphOne(string $related, string $name, string $type = null, string $id = null, string $localKey = null) Определить полиморфное отношение «один к одному». | |
| BelongsTo | belongsTo(string $related, string $foreignKey = null, string $ownerKey = null, string $relation = null) Определить обратное отношение «один к одному» или «многие к одному». | |
| MorphTo | morphTo(string $name = null, string $type = null, string $id = null) Определить полиморфное, обратное отношение «один к одному» или «многие к одному». | |
| MorphTo | morphEagerTo(string $name, string $type, string $id) Определить полиморфное, обратное отношение «один к одному» или «многие к одному». | |
| MorphTo | morphInstanceTo(string $target, string $name, string $type, string $id) Определить полиморфное, обратное отношение «один к одному» или «многие к одному». | |
| static string | getActualClassNameForMorph(string $class) Получить фактическое имя класса для данного морф-класса. | |
| string | guessBelongsToRelation() Угадать имя отношения «принадлежит к». | |
| HasMany | hasMany(string $related, string $foreignKey = null, string $localKey = null) Определить отношение «один ко многим». | |
| HasManyThrough | hasManyThrough(string $related, string $through, string|null $firstKey = null, string|null $secondKey = null, string|null $localKey = null) Определить отношение «многие через многие». | |
| MorphMany | morphMany(string $related, string $name, string $type = null, string $id = null, string $localKey = null) Определить полиморфное отношение «один ко многим». | |
| BelongsToMany | belongsToMany(string $related, string $table = null, string $foreignKey = null, string $relatedKey = null, string $relation = null) Определить отношение «многие ко многим». | |
| MorphToMany | morphToMany(string $related, string $name, string $table = null, string $foreignKey = null, string $relatedKey = null, bool $inverse = false) Определить полиморфное отношение «многие ко многим». | |
| MorphToMany | morphedByMany(string $related, string $name, string $table = null, string $foreignKey = null, string $relatedKey = null) Определить полиморфное, обратное отношение «многие ко многим». | |
| string | guessBelongsToManyRelation() Получить имя отношения «многие ко многим». | |
| string | joiningTable(string $related) Получить имя соединительной таблицы для отношения «многие ко многим». | |
| bool | touches(string $relation) Определить, затрагивает ли модель данное отношение. | |
| void | touchOwners() Затронуть владеющие отношения модели. | |
| array | getMorphs(string $name, string $type, string $id) Получить столбцы полиморфных отношений. | |
| string | getMorphClass() Получить имя класса для полиморфных отношений. | |
| mixed | newRelatedInstance(string $class) Создать новый экземпляр модели для связанной модели. | |
| array | getRelations() Получить все загруженные отношения для экземпляра. | |
| mixed | getRelation(string $relation) Получить указанное отношение. | |
| bool | relationLoaded(string $key) Определить, загружено ли данное отношение. | |
| $this | setRelation(string $relation, mixed $value) Установить конкретное отношение в модели. | |
| $this | setRelations(array $relations) Установить весь массив отношений в модели. | |
| array | getTouchedRelations() Получить отношения, которые затрагиваются при сохранении. | |
| $this | setTouchedRelations(array $touches) Установить отношения, которые затрагиваются при сохранении. |
Подробности
HasOne hasOne(string $related, string $foreignKey = null, string $localKey = null)
Определить отношение «один к одному».
MorphOne morphOne(string $related, string $name, string $type = null, string $id = null, string $localKey = null)
Определить полиморфное отношение «один к одному».
BelongsTo belongsTo(string $related, string $foreignKey = null, string $ownerKey = null, string $relation = null)
Определите обратное отношение один-к-одному или один-ко-многим.
MorphTo morphTo(string $name = null, string $type = null, string $id = null)
Определите полиморфное обратное отношение один-к-одному или один-ко-многим.
protected MorphTo morphEagerTo(string $name, string $type, string $id)
Определите полиморфное обратное отношение один-к-одному или один-ко-многим.
protected MorphTo morphInstanceTo(string $target, string $name, string $type, string $id)
Определите полиморфное обратное отношение один-к-одному или один-ко-многим.
static string getActualClassNameForMorph(string $class)
Получить фактическое имя класса для заданного класса морфирования.
protected string guessBelongsToRelation()
Угадать имя отношения «принадлежит».
HasMany hasMany(string $related, string $foreignKey = null, string $localKey = null)
Определите отношение один-ко-многим.
HasManyThrough hasManyThrough(string $related, string $through, string|null $firstKey = null, string|null $secondKey = null, string|null $localKey = null)
Определите отношение has-many-through.
MorphMany morphMany(string $related, string $name, string $type = null, string $id = null, string $localKey = null)
Определите полиморфное отношение один-ко-многим.
BelongsToMany belongsToMany(string $related, string $table = null, string $foreignKey = null, string $relatedKey = null, string $relation = null)
Определите отношение многие-ко-многим.
MorphToMany morphToMany(string $related, string $name, string $table = null, string $foreignKey = null, string $relatedKey = null, bool $inverse = false)
Определите полиморфное отношение многие-ко-многим.
MorphToMany morphedByMany(string $related, string $name, string $table = null, string $foreignKey = null, string $relatedKey = null)
Определите полиморфное обратное отношение многие-ко-многим.
protected string guessBelongsToManyRelation()
Получить имя отношения «принадлежит многим».
string joiningTable(string $related)
Получить имя таблицы соединения для отношения многие-ко-многим.
bool touches(string $relation)
Определить, затрагивает ли модель заданное отношение.
void touchOwners()
Затронуть отношения владения модели.
protected array getMorphs(string $name, string $type, string $id)
Получить столбцы полиморфных отношений.
string getMorphClass()
Получить имя класса для полиморфных отношений.
protected mixed newRelatedInstance(string $class)
Создать новый экземпляр модели для связанной модели.
array getRelations()
Получить все загруженные отношения для экземпляра.
mixed getRelation(string $relation)
Получить указанное отношение.
bool relationLoaded(string $key)
Определить, загружено ли данное отношение.
$this setRelation(string $relation, mixed $value)
Установить конкретное отношение в модели.
$this setRelations(array $relations)
Установить весь массив отношений в модели.
array getTouchedRelations()
Получить отношения, которые затрагиваются при сохранении.
$this setTouchedRelations(array $touches)
Установить отношения, которые затрагиваются при сохранении.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.4/Illuminate/Database/Eloquent/Concerns/HasRelationships.html