如何禁用在 Laravel Jetstream 中为新注册用户创建新团队的功能?

Jaq*_*arh 3 php laravel laravel-jetstream

默认情况下,用户加入他们的个人团队。然后,他们可以通过仪表板创建其他团队。

导航菜单在允许显示链接和采取行动之前具有此功能。

@can('create', Laravel\Jetstream\Jetstream::newTeamModel())
@endcan
Run Code Online (Sandbox Code Playgroud)

查看用户创建中app/Actions/Fortify/CreateNewUser.php没有具体提及这一点,默认情况下所有用户都可以创建。

查看数据库,也没有特定的存储,我无法找到如何@can('create')在 PHP 中验证它。

这里面app/Actions/Jetstream/CreateTeam.php又提到了:

Gate::forUser($user)->authorize('create', Jetstream::newTeamModel());
Run Code Online (Sandbox Code Playgroud)

但同样,没有提及如何进行验证。

如何禁用在 Jetstream 中为新注册用户创建新团队的功能?

Jaq*_*arh 8

使用 IRC 后,一位参与者让我了解了create它的用法,可以在app/Policies/TeamPolicy::create.

这总是会返回,true因此默认情况下所有用户可以创建新团队。