标签: spatie

给定的角色或权限应使用guard而不是`web`。-拉威尔

我正在使用包Spatie来获取用户角色和权限。在创建角色并将其分配给用户时,出现错误

给定的角色或权限应使用guard``而不是 web

以下是我将数据保存在控制器中的方式

是什么导致我的应用程序出现此问题?

控制者

  $user = new User;
        $user->firstname = Input::get('firstname');
        $user->lastname = Input::get('lastname');
        $user->login = Input::get('login');
        $user->desc = Input::get('desc');
        $user->email = Input::get('email');
        // $user->group = Input::get('group');
        $user->password = Hash::make(Input::get('password'));
        $user->save();
        $user->assignRole(Input::get('roles'));
Run Code Online (Sandbox Code Playgroud)

config / auth.php

<?php

return [

    /*
    |--------------------------------------------------------------------------
    | Authentication Defaults
    |--------------------------------------------------------------------------
    |
    | This option controls the default authentication "guard" and password
    | reset options for your application. You may change these defaults
    | as required, but they're a perfect start for most applications.
    | …
Run Code Online (Sandbox Code Playgroud)

php laravel spatie

1
推荐指数
3
解决办法
3419
查看次数

Spatie\Permission\Exceptions\PermissionAlreadyExists :Guard `web` 的 `edit listing` 权限已经存在

我已经克隆了市场仓库并进行了适当的配置。当我使用时,php artisan db:seed我收到此错误

david@david-Lenovo-G50-30:~/projects/marketplacekit$ php artisan db:seed
Seeding: UsersTableSeeder
Seeding: RolesAndPermissionsSeeder

Spatie\Permission\Exceptions\PermissionAlreadyExists  : A `edit listing` permission already exists for guard `web`.

at /home/david/projects/marketplacekit/vendor/spatie/laravel-permission/src/Exceptions/PermissionAlreadyExists.php:11
 7| class PermissionAlreadyExists extends InvalidArgumentException
 8| {
 9|     public static function create(string $permissionName, string $guardName)
10|     {    
11|         return new static("A `{$permissionName}` permission already exists for guard`{$guardName}`.");
12|     }
13| }
14| 

  Exception trace:

1   Spatie\Permission\Exceptions\PermissionAlreadyExists::create("edit listing", "web")
  /home/david/projects/marketplacekit/vendor/spatie/laravel-permission/src/Models/Permission.php:42

2   Spatie\Permission\Models\Permission::create(["edit listing", "web"])
  /home/david/projects/marketplacekit/database/seeds/RolesAndPermissionsSeeder.php:20

Please use the argument -v to see more …
Run Code Online (Sandbox Code Playgroud)

laravel spatie

1
推荐指数
1
解决办法
2457
查看次数

Laravel 7:找不到接口“Spatie\MediaLibrary\HasMedia”

使用 MediaLibrary 包时出现此错误

Interface 'Spatie\MediaLibrary\HasMedia' not found
Trait 'Spatie\MediaLibrary\InteractsWithMedia' not found
Run Code Online (Sandbox Code Playgroud)

我的项目详情:-

php:7.3.22

拉拉维尔:7.28.3

我试过按照文档 v7 并运行下面的命令

composer require spatie/laravel-medialibrary
Run Code Online (Sandbox Code Playgroud)

除此之外,我还检查了其他帖子,我遵循了大部分步骤,但仍然返回相同的错误

作曲家.json

"require": {
        "php": "^7.2.5",
        "fideloper/proxy": "^4.2",
        "fruitcake/laravel-cors": "^1.0",
        "guzzlehttp/guzzle": "^6.3",
        "laravel/framework": "^7.0",
        "laravel/tinker": "^2.0",
        "laravelcollective/html": "^6.2",
        "spatie/laravel-activitylog": "^3.16",
        "spatie/laravel-medialibrary": "^7.19"
    },
Run Code Online (Sandbox Code Playgroud)

模型

use Illuminate\Database\Eloquent\Model;
use Spatie\Activitylog\Traits\LogsActivity;
use Spatie\MediaLibrary\HasMedia;
use Spatie\MediaLibrary\InteractsWithMedia;
class Applicant extends Model implements HasMedia
{
    use LogsActivity, InteractsWithMedia;
}

Run Code Online (Sandbox Code Playgroud)

spatie laravel-7

1
推荐指数
1
解决办法
3146
查看次数

如何使用 Spatie 在 Laravel 中使用播种机为所有用户添加分配角色?

我正在使用Spatie 角色权限来处理 Laravel 应用程序中的用户角色。我使用工厂创建了用户factory(App\User::class, 50)->create();,现在一些用户是管理员角色。我想将所有角色替换为订阅者,并且只有一个用户是管理员。

我创建了一个用于生成管理员用户的播种机并为该用户添加了角色

$user = User::create([
    'name_first' => 'Admin',
    'email' => 'admins@admins.com',
    'password' => bcrypt('admins@admins.com')
]);

$user->assignRole('super-admin');
Run Code Online (Sandbox Code Playgroud)

如何使用播种机实现这一目标?或者任何其他选项可用于此?

laravel spatie

-1
推荐指数
2
解决办法
5710
查看次数

标签 统计

spatie ×4

laravel ×3

laravel-7 ×1

php ×1