56 lines
1.6 KiB
PHP
56 lines
1.6 KiB
PHP
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
|
use Illuminate\Database\Eloquent\Model;
|
|
|
|
class Tasks extends Model
|
|
{
|
|
use HasFactory;
|
|
|
|
protected $table = 'tasks';
|
|
|
|
// protected $primaryKey = 'id'; // چون جدول UUID داره
|
|
// public $incrementing = false;
|
|
// protected $keyType = 'int';
|
|
|
|
protected $fillable = [
|
|
'task_id',
|
|
'name',
|
|
'description',
|
|
'workspace_slug',
|
|
'assignees',
|
|
'start_date',
|
|
'target_date',
|
|
'priority',
|
|
'description_html',
|
|
'completed_at',
|
|
'project',
|
|
'workspace',
|
|
'state',
|
|
'json',
|
|
'created_at',
|
|
'updated_at',
|
|
'deleted_at',
|
|
'created_by',
|
|
'updated_by',
|
|
'deleted_by',
|
|
|
|
];
|
|
|
|
// رابطه many-to-many با users
|
|
public function users()
|
|
{
|
|
// return $this->belongsToMany(User::class, 'pivot_tasks', 'task_id', 'user_id');
|
|
return $this->belongsToMany(
|
|
User::class, // مدل مقصد
|
|
'pivot_tasks', // جدول واسط
|
|
'task_id', // ستون جدول واسط که به جدول tasks اشاره میکنه
|
|
'user_id', // ستون جدول واسط که به جدول users اشاره میکنه
|
|
'task_id', // ستون جدول tasks که ستون واسط بهش اشاره میکنه (local key)
|
|
'plain_id' // ستون جدول users که ستون واسط بهش اشاره میکنه (related key)
|
|
);
|
|
}
|
|
}
|