3 回答

TA貢獻1943條經驗 獲得超7個贊
這非常簡單。沒有任何額外的包是可能的。
僅編輯此路徑下的 AuthCode.php、PersonalAccessClient.php、Client.php 和 Token.php:
“/供應商/laravel/護照/src/”
替換這一行:
use Jenssegers\Mongodb\Eloquent\Model;
通過這一行:
use Illuminate\Database\Eloquent\Model;
注意:如果您在所有頂級模型中使用特定于您的 mongo 連接的多連接,如下所示:
protected $connection = 'mongodb';

TA貢獻1845條經驗 獲得超8個贊
這對我有用
在 Models 文件夾中創建護照模型 Authcode,Client,PersonalAccessClient,Token
從 /vendor/laravel/passport/src/ 復制原始代碼并粘貼
編輯命名空間并替換
use Jenssegers\Mongodb\Eloquent\Model
反而
use Illuminate\Database\Eloquent\Model;
在 AppServiceProvider.php 的 boot() 方法中添加如下代碼
$loader = AliasLoader::getInstance();
$loader->alias(\Laravel\Passport\AuthCode::class,\App\Models\Passport\AuthCode::class);
$loader->alias(\Laravel\Passport\Client::class,\App\Models\Passport\Client::class);
$loader->alias(\Laravel\Passport\Token::class,\App\Models\Passport\Token::class);
$loader->alias(\Laravel\Passport\PersonalAccessClient::class,\App\Models\Passport\PersonalAccessClient::class);

TA貢獻1788條經驗 獲得超4個贊
目前我正在將 Laravel 8 與 Jessengers V4 一起使用,我遇到了同樣的問題
護照的內部供應商只需替換為:
use Jenssegers\Mongodb\Eloquent\Model
反而
use Illuminate\Database\Eloquent\Model;
一切正常。我建議編寫一個自動替換的腳本,也許使用命令“sed”或 fork 項目。
- 3 回答
- 0 關注
- 136 瀏覽
添加回答
舉報