public function map(Fluent $builder) { $builder->increments('id'); $builder->string('name'); $builder->belongsTo(StubEntity::class, 'parent')->inversedBy('parent'); $builder->hasMany(StubEntity::class, 'children')->mappedBy('parent'); $builder->hasOne(StubEntity::class, 'one')->ownedBy('theOther'); $builder->belongsToMany(StubEntity::class, 'many')->owns('theWorld'); }
/** * Adds only relations * * @param Fluent $builder */ public function addRelations(Fluent $builder) { $users = $builder->belongsToMany($this->relations['users'][0], $this->relations['users'][1])->mappedBy($this->relations['users'][2]); if ($this->joinTable) { $users->joinTable($this->joinTable); } if ($this->permissions) { $builder->hasMany($this->relations['permissions'][0], $this->relations['permissions'][1])->mappedBy($this->name)->cascadeAll()->orphanRemoval(); } }