HasRelationships (Database\Eloquent\Concerns)
HasRelationships
trait HasRelationships (View source)
Properties
static array | $manyMethods | The many to many relationship methods. |
Methods
HasOne | hasOne(string $related, string $foreignKey = null, string $localKey = null) Define a one-to-one relationship. | |
MorphOne | morphOne(string $related, string $name, string $type = null, string $id = null, string $localKey = null) Define a polymorphic one-to-one relationship. | |
BelongsTo | belongsTo(string $related, string $foreignKey = null, string $ownerKey = null, string $relation = null) Define an inverse one-to-one or many relationship. | |
MorphTo | morphTo(string $name = null, string $type = null, string $id = null) Define a polymorphic, inverse one-to-one or many relationship. | |
static string | getActualClassNameForMorph(string $class) Retrieve the actual class name for a given morph class. | |
HasMany | hasMany(string $related, string $foreignKey = null, string $localKey = null) Define a one-to-many relationship. | |
HasManyThrough | hasManyThrough(string $related, string $through, string|null $firstKey = null, string|null $secondKey = null, string|null $localKey = null) Define a has-many-through relationship. | |
MorphMany | morphMany(string $related, string $name, string $type = null, string $id = null, string $localKey = null) Define a polymorphic one-to-many relationship. | |
BelongsToMany | belongsToMany(string $related, string $table = null, string $foreignKey = null, string $relatedKey = null, string $relation = null) Define a many-to-many relationship. | |
MorphToMany | morphToMany(string $related, string $name, string $table = null, string $foreignKey = null, string $relatedKey = null, bool $inverse = false) Define a polymorphic many-to-many relationship. | |
MorphToMany | morphedByMany(string $related, string $name, string $table = null, string $foreignKey = null, string $relatedKey = null) Define a polymorphic, inverse many-to-many relationship. | |
string | joiningTable(string $related) Get the joining table name for a many-to-many relation. | |
bool | touches(string $relation) Determine if the model touches a given relation. | |
void | touchOwners() Touch the owning relations of the model. | |
string | getMorphClass() Get the class name for polymorphic relations. | |
array | getRelations() Get all the loaded relations for the instance. | |
mixed | getRelation(string $relation) Get a specified relationship. | |
bool | relationLoaded(string $key) Determine if the given relation is loaded. | |
$this | setRelation(string $relation, mixed $value) Set the specific relationship in the model. | |
$this | setRelations(array $relations) Set the entire relations array on the model. | |
array | getTouchedRelations() Get the relationships that are touched on save. | |
$this | setTouchedRelations(array $touches) Set the relationships that are touched on save. |
Details
HasOne hasOne(string $related, string $foreignKey = null, string $localKey = null)
Define a one-to-one relationship.
MorphOne morphOne(string $related, string $name, string $type = null, string $id = null, string $localKey = null)
Define a polymorphic one-to-one relationship.
BelongsTo belongsTo(string $related, string $foreignKey = null, string $ownerKey = null, string $relation = null)
Define an inverse one-to-one or many relationship.
MorphTo morphTo(string $name = null, string $type = null, string $id = null)
Define a polymorphic, inverse one-to-one or many relationship.
static string getActualClassNameForMorph(string $class)
Retrieve the actual class name for a given morph class.
HasMany hasMany(string $related, string $foreignKey = null, string $localKey = null)
Define a one-to-many relationship.
HasManyThrough hasManyThrough(string $related, string $through, string|null $firstKey = null, string|null $secondKey = null, string|null $localKey = null)
Define a has-many-through relationship.
MorphMany morphMany(string $related, string $name, string $type = null, string $id = null, string $localKey = null)
Define a polymorphic one-to-many relationship.
BelongsToMany belongsToMany(string $related, string $table = null, string $foreignKey = null, string $relatedKey = null, string $relation = null)
Define a many-to-many relationship.
MorphToMany morphToMany(string $related, string $name, string $table = null, string $foreignKey = null, string $relatedKey = null, bool $inverse = false)
Define a polymorphic many-to-many relationship.
MorphToMany morphedByMany(string $related, string $name, string $table = null, string $foreignKey = null, string $relatedKey = null)
Define a polymorphic, inverse many-to-many relationship.
string joiningTable(string $related)
Get the joining table name for a many-to-many relation.
bool touches(string $relation)
Determine if the model touches a given relation.
void touchOwners()
Touch the owning relations of the model.
string getMorphClass()
Get the class name for polymorphic relations.
array getRelations()
Get all the loaded relations for the instance.
mixed getRelation(string $relation)
Get a specified relationship.
bool relationLoaded(string $key)
Determine if the given relation is loaded.
$this setRelation(string $relation, mixed $value)
Set the specific relationship in the model.
$this setRelations(array $relations)
Set the entire relations array on the model.
array getTouchedRelations()
Get the relationships that are touched on save.
$this setTouchedRelations(array $touches)
Set the relationships that are touched on save.
© 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