class Book extends BaseModel (View source)

Represents a book entity within the system.

Each book record stores its basic metadata (ISBN, title, author, etc.) and is associated with a genre and multiple physical copies.

Properties

bool $incrementing

Indicates that the model does not use auto-incrementing IDs.

from  BaseModel
protected string $keyType

The data type of the primary key ID.

from  BaseModel
bool $timestamps

Indicates that the model does not use timestamps.

protected string $table

The database table used by this model.

protected array<int,string> $fillable

The attributes that are mass assignable.

Methods

string|null
getIdAttribute(mixed $value)

Converts the binary UUID stored in the database into a string UUID.

static void
boot()

Boot function for the model.

string|null
getGenreIdAttribute(mixed $value)

Converts the binary UUID from the database to a string UUID.

BelongsTo
genre()

Defines the relationship between the book and its genre.

HasMany
copies()

Defines the relationship between the book and its copies.

Details

string|null getIdAttribute(mixed $value)

Converts the binary UUID stored in the database into a string UUID.

Parameters

mixed $value

binary value from the database

Return Value

string|null

UUID in string format, or null if not set

static protected void boot()

Boot function for the model.

This ensures that every new record automatically gets a UUID assigned if no ID is provided during creation.

Return Value

void

string|null getGenreIdAttribute(mixed $value)

Converts the binary UUID from the database to a string UUID.

Parameters

mixed $value

binary UUID value

Return Value

string|null

string UUID or null if not set

BelongsTo genre()

Defines the relationship between the book and its genre.

Return Value

BelongsTo

the genre that this book belongs to

HasMany copies()

Defines the relationship between the book and its copies.

Each book can have multiple copies available for loans.

Return Value

HasMany

the collection of copies associated with this book