Files
Nexora/app/Models/Folder.php

44 lines
853 B
PHP
Raw Normal View History

2025-04-23 00:14:33 +06:00
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Folder extends Model
{
protected $fillable = [
'name',
'parent_id',
'project_id',
2025-04-30 20:56:28 +02:00
//'icon',
//'color',
//'description',
2025-04-23 00:14:33 +06:00
];
public function descendants()
{
return $this->belongsToMany(Folder::class, 'folder_closure', 'ancestor_id', 'descendant_id')
->withPivot('depth');
}
public function documents()
{
return $this->hasMany(Document::class);
}
public function parent()
{
return $this->belongsTo(Folder::class, 'parent_id');
}
public function children()
{
return $this->hasMany(Folder::class, 'parent_id')->with('children');
}
public function project()
{
return $this->belongsTo(Project::class);
}
}