EpisodesCategory.php 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <?php
  2. namespace App\Models;
  3. use Dcat\Admin\Traits\HasDateTimeFormatter;
  4. use Illuminate\Database\Eloquent\SoftDeletes;
  5. use Illuminate\Database\Eloquent\Model;
  6. /**
  7. * App\Models\EpisodesCategory
  8. *
  9. * @property int $id
  10. * @property string $name 名称
  11. * @property int $level 分类等级
  12. * @property int $pid 父id
  13. * @property string|null $path 路径
  14. * @property int $sort 排序越大越靠前
  15. * @property \Illuminate\Support\Carbon|null $updated_at
  16. * @property \Illuminate\Support\Carbon|null $deleted_at
  17. * @property \Illuminate\Support\Carbon|null $created_at
  18. * @method static \Illuminate\Database\Eloquent\Builder|EpisodesCategory newModelQuery()
  19. * @method static \Illuminate\Database\Eloquent\Builder|EpisodesCategory newQuery()
  20. * @method static \Illuminate\Database\Query\Builder|EpisodesCategory onlyTrashed()
  21. * @method static \Illuminate\Database\Eloquent\Builder|EpisodesCategory query()
  22. * @method static \Illuminate\Database\Eloquent\Builder|EpisodesCategory whereCreatedAt($value)
  23. * @method static \Illuminate\Database\Eloquent\Builder|EpisodesCategory whereDeletedAt($value)
  24. * @method static \Illuminate\Database\Eloquent\Builder|EpisodesCategory whereId($value)
  25. * @method static \Illuminate\Database\Eloquent\Builder|EpisodesCategory whereName($value)
  26. * @method static \Illuminate\Database\Eloquent\Builder|EpisodesCategory wherePath($value)
  27. * @method static \Illuminate\Database\Eloquent\Builder|EpisodesCategory wherePid($value)
  28. * @method static \Illuminate\Database\Eloquent\Builder|EpisodesCategory whereSort($value)
  29. * @method static \Illuminate\Database\Eloquent\Builder|EpisodesCategory whereUpdatedAt($value)
  30. * @method static \Illuminate\Database\Query\Builder|EpisodesCategory withTrashed()
  31. * @method static \Illuminate\Database\Query\Builder|EpisodesCategory withoutTrashed()
  32. * @mixin \Eloquent
  33. * @property-read EpisodesCategory|null $parent
  34. * @property \App\Models\Episode|null $episodes
  35. * @property-read \Illuminate\Database\Eloquent\Collection|EpisodesCategory[] $child
  36. * @property-read int|null $child_count
  37. * @property-read int|null $episodes_count
  38. * @method static \Illuminate\Database\Eloquent\Builder|EpisodesCategory whereLevel($value)
  39. */
  40. class EpisodesCategory extends Model
  41. {
  42. use HasDateTimeFormatter;
  43. use SoftDeletes;
  44. protected $table = 'episodes_category';
  45. protected $hidden = [
  46. 'updated_at','deleted_at','path'
  47. ];
  48. public function parent()
  49. {
  50. return $this->belongsTo(EpisodesCategory::class,'pid','id');
  51. }
  52. public function child()
  53. {
  54. return $this->hasMany(EpisodesCategory::class,'pid','id');
  55. }
  56. public function episodes()
  57. {
  58. return $this->hasMany(Episode::class,'category_id','id');
  59. }
  60. }