41 lines
1.6 KiB
PHP
41 lines
1.6 KiB
PHP
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Illuminate\Database\Eloquent\Relations\BelongsToMany;
|
|
use Illuminate\Database\Eloquent\Relations\HasOne;
|
|
|
|
/**
|
|
* @property int $id
|
|
* @property string|null $last_message
|
|
* @property int|null $last_user_id
|
|
* @property \Illuminate\Support\Carbon|null $created_at
|
|
* @property \Illuminate\Support\Carbon|null $updated_at
|
|
* @property-read \App\Models\User|null $lastUser
|
|
* @property-read \Illuminate\Database\Eloquent\Collection<int, \App\Models\User> $users
|
|
* @property-read int|null $users_count
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Inbox newModelQuery()
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Inbox newQuery()
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Inbox query()
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Inbox whereCreatedAt($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Inbox whereId($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Inbox whereLastMessage($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Inbox whereLastUserId($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder<static>|Inbox whereUpdatedAt($value)
|
|
* @mixin \Eloquent
|
|
*/
|
|
class Inbox extends Model
|
|
{
|
|
protected $fillable = ['last_user_id', 'last_message'];
|
|
public function users(): BelongsToMany
|
|
{
|
|
return $this->belongsToMany(User::class);
|
|
}
|
|
|
|
public function lastUser(): HasOne
|
|
{
|
|
return $this->hasOne(User::class, 'id', 'last_user_id');
|
|
}
|
|
}
|