44 lines
1.7 KiB
PHP
44 lines
1.7 KiB
PHP
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Illuminate\Database\Eloquent\Relations\HasMany;
|
|
use Illuminate\Database\Eloquent\Relations\MorphOne;
|
|
|
|
/**
|
|
* @property int $id
|
|
* @property string|null $bio
|
|
* @property string|null $location
|
|
* @property string|null $phone
|
|
* @property \Illuminate\Support\Carbon|null $created_at
|
|
* @property \Illuminate\Support\Carbon|null $updated_at
|
|
* @property-read \Illuminate\Database\Eloquent\Collection<int, \App\Models\Follow> $followings
|
|
* @property-read int|null $followings_count
|
|
* @property-read \App\Models\User|null $user
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Customer newModelQuery()
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Customer newQuery()
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Customer query()
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Customer whereBio($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Customer whereCreatedAt($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Customer whereId($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Customer whereLocation($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Customer wherePhone($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Customer whereUpdatedAt($value)
|
|
* @mixin \Eloquent
|
|
*/
|
|
class Customer extends Model
|
|
{
|
|
protected $fillable = ['bio', 'location', 'phone'];
|
|
|
|
public function user(): MorphOne
|
|
{
|
|
return $this->morphOne(User::class, 'role');
|
|
}
|
|
|
|
public function followings(): HasMany
|
|
{
|
|
return $this->hasMany(Follow::class, 'customer_id');
|
|
}
|
|
}
|