UserFrosting API

Model extends Model Uses HasRelationships

Model Class.

UserFrosting's base data model, from which all UserFrosting data classes extend.

Tags
author

Alex Weissman (https://alexanderweissman.com)

Table of Contents

$ci ContainerInterface
$timestamps bool
$manyMethodsExtended The many to many relationship methods. array
__construct() mixed
attributeExists() Determine if an attribute exists on the model - even if it is null. bool
findUnique() Determines whether a model exists by checking a unique column, including checking soft-deleted records. Model|null
relationExists() Determine if an relation exists on the model - even if it is null. bool
store() Store the object in the DB, creating a new row if one doesn't already exist. int
newEloquentBuilder() Overrides Laravel's base Model to return our custom Eloquent builder object. EloquentBuilder
newBaseQueryBuilder() Overrides Laravel's base Model to return our custom query builder object. Builder
export() Get the properties of this object as an associative array. Alias for toArray(). array
queryBuilder() For raw array fetching. Must be static, otherwise PHP gets confused about where to find $table. Builder
hasMany() Overrides the default Eloquent hasMany relationship to return a HasManySyncable. HasManySyncable
morphMany() Overrides the default Eloquent morphMany relationship to return a MorphManySyncable. MorphManySyncable
belongsToManyThrough() Define a many-to-many 'through' relationship. BelongsToManyThrough
belongsToManyUnique() Define a unique many-to-many relationship. Similar to a regular many-to-many relationship, but removes duplicate child objects. BelongsToManyUnique
morphToManyUnique() Define a unique morphs-to-many relationship. Similar to a regular morphs-to-many relationship, but removes duplicate child objects. MorphToManyUnique
getBelongsToManyCaller() Get the relationship name of the belongs to many. string

Properties

$ci

public static ContainerInterface $ci

$timestamps

public bool $timestamps = false

$manyMethodsExtended

The many to many relationship methods.

public static array $manyMethodsExtended = ['belongsToMany', 'morphToMany', 'morphedByMany', 'morphToManyUnique']

Methods

__construct()

public __construct( [ $attributes : array = [] ] ) : mixed
Parameters
$attributes : array = []
Return values
mixed

attributeExists()

Determine if an attribute exists on the model - even if it is null.

public attributeExists( $key : string ) : bool
Parameters
$key : string
Return values
bool

findUnique()

Determines whether a model exists by checking a unique column, including checking soft-deleted records.

public static findUnique( $value : mixed , $identifier : string [, $checkDeleted : bool = true ] ) : Model|null
Parameters
$value : mixed
$identifier : string
$checkDeleted : bool = true

set to true to include soft-deleted records

Return values
Model|null

relationExists()

Determine if an relation exists on the model - even if it is null.

public relationExists( $key : string ) : bool
Parameters
$key : string
Return values
bool

store()

Store the object in the DB, creating a new row if one doesn't already exist.

public store( ) : int

Calls save(), then returns the id of the new record in the database.

Return values
int

the id of this object.

newBaseQueryBuilder()

Overrides Laravel's base Model to return our custom query builder object.

protected newBaseQueryBuilder( ) : Builder
Return values
Builder

export()

Get the properties of this object as an associative array. Alias for toArray().

public export( ) : array
Tags
deprecated

since 4.1.8 There is no point in having this alias.

Return values
array

hasMany()

Overrides the default Eloquent hasMany relationship to return a HasManySyncable.

public hasMany( $related : string [, $foreignKey : string = null ] [, $localKey : string = null ] ) : HasManySyncable
Parameters
$related : string
$foreignKey : string = null
$localKey : string = null
Return values
HasManySyncable

morphMany()

Overrides the default Eloquent morphMany relationship to return a MorphManySyncable.

public morphMany( $related : string , $name : string [, $type : string = null ] [, $id : string = null ] [, $localKey : string = null ] ) : MorphManySyncable
Parameters
$related : string
$name : string
$type : string = null
$id : string = null
$localKey : string = null
Return values
MorphManySyncable

belongsToManyThrough()

Define a many-to-many 'through' relationship.

public belongsToManyThrough( $related : string , $through : string [, $firstJoiningTable : string = null ] [, $firstForeignPivotKey : string = null ] [, $firstRelatedKey : string = null ] [, $secondJoiningTable : string = null ] [, $secondForeignPivotKey : string = null ] [, $secondRelatedKey : string = null ] [, $throughRelation : string = null ] [, $relation : string = null ] ) : BelongsToManyThrough

This is basically hasManyThrough for many-to-many relationships.

Parameters
$related : string
$through : string
$firstJoiningTable : string = null
$firstForeignPivotKey : string = null
$firstRelatedKey : string = null
$secondJoiningTable : string = null
$secondForeignPivotKey : string = null
$secondRelatedKey : string = null
$throughRelation : string = null
$relation : string = null
Return values
BelongsToManyThrough

belongsToManyUnique()

Define a unique many-to-many relationship. Similar to a regular many-to-many relationship, but removes duplicate child objects.

public belongsToManyUnique( $related : string [, $table : string = null ] [, $foreignPivotKey : string = null ] [, $relatedPivotKey : string = null ] [, $parentKey : string = null ] [, $relatedKey : string = null ] [, $relation : string = null ] ) : BelongsToManyUnique

Can also be used to implement ternary relationships.

Parameters
$related : string
$table : string = null
$foreignPivotKey : string = null
$relatedPivotKey : string = null
$parentKey : string = null
$relatedKey : string = null
$relation : string = null
Return values
BelongsToManyUnique

morphToManyUnique()

Define a unique morphs-to-many relationship. Similar to a regular morphs-to-many relationship, but removes duplicate child objects.

public morphToManyUnique( $related : string , $name : string [, $table : string = null ] [, $foreignPivotKey : string = null ] [, $relatedPivotKey : string = null ] [, $parentKey : string = null ] [, $relatedKey : string = null ] [, $inverse : bool = false ] ) : MorphToManyUnique
Parameters
$related : string
$name : string
$table : string = null
$foreignPivotKey : string = null
$relatedPivotKey : string = null
$parentKey : string = null
$relatedKey : string = null
$inverse : bool = false
Return values
MorphToManyUnique

getBelongsToManyCaller()

Get the relationship name of the belongs to many.

protected getBelongsToManyCaller( ) : string
Return values
string

Search results