class Technique extends Model
{
use HasFactory;
+
+ public function chapters() {
+ return $this
+ ->belongsToMany(Technique::class, 'technique_chapter', 'parent_id', 'child_id')
+ ->withPivot('level', 'order')
+ ->orderByPivot('order')
+ ->using(TechniqueChapter::class);
+ }
+
+ public function relations() {
+ return $this
+ ->belongsToMany(Technique::class, 'technique_relations', 'from_id', 'to_id')
+ ->withPivot('type')
+ ->using(TechniqueRelation::class);
+ }
+
+ public function translations() {
+ return $this->hasMany(TechniqueTranslation::class);
+ }
+
+ protected $casts = [
+ 'index' => 'boolean',
+ 'rulesets' => 'array',
+ ];
+
+ protected $with = [
+ 'translations',
+ ];
+
}