Skip to content

Commit ee0817f

Browse files
authored
Use ->withPivot() for teamed relationships (#2679)
* use ->withPivot for teamed relationships * add ->withPivot() method to permissions
1 parent b34b5a3 commit ee0817f

File tree

2 files changed

+9
-4
lines changed

2 files changed

+9
-4
lines changed

src/Traits/HasPermissions.php

+4-1
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,10 @@ public function permissions(): BelongsToMany
8989
return $relation;
9090
}
9191

92-
return $relation->wherePivot(app(PermissionRegistrar::class)->teamsKey, getPermissionsTeamId());
92+
$teamsKey = app(PermissionRegistrar::class)->teamsKey;
93+
$relation->withPivot($teamsKey);
94+
95+
return $relation->wherePivot($teamsKey, getPermissionsTeamId());
9396
}
9497

9598
/**

src/Traits/HasRoles.php

+5-3
Original file line numberDiff line numberDiff line change
@@ -58,10 +58,12 @@ public function roles(): BelongsToMany
5858
if (! app(PermissionRegistrar::class)->teams) {
5959
return $relation;
6060
}
61+
62+
$teamsKey = app(PermissionRegistrar::class)->teamsKey;
63+
$relation->withPivot($teamsKey);
64+
$teamField = config('permission.table_names.roles').'.'.$teamsKey;
6165

62-
$teamField = config('permission.table_names.roles').'.'.app(PermissionRegistrar::class)->teamsKey;
63-
64-
return $relation->wherePivot(app(PermissionRegistrar::class)->teamsKey, getPermissionsTeamId())
66+
return $relation->wherePivot($teamsKey, getPermissionsTeamId())
6567
->where(fn ($q) => $q->whereNull($teamField)->orWhere($teamField, getPermissionsTeamId()));
6668
}
6769

0 commit comments

Comments
 (0)