我正在
[Symfony\Component\Debug\Exception\FatalThrowableError] Call to a member function getDateFormat() on null
在laravel / mongodb api项目上运行“php artisan passport:install”时。我试过更改“使用Illuminate \ Database \ Eloquent \ Model;” “使用Jenssegers \ Mongodb \ Eloquent \ Model作为模型;”在我的用户和client.php中,但它仍然抛出异常。
任何想法??
答案 0 :(得分:1)
在开发相同类型的项目时,我也遇到了这个问题。发生这种情况是因为Laravel Passport不支持Jenssegres \ laravel-mongodb。默认情况下,它使用Illuminate \ Database \ Eloquent \ Model。
现在有两种解决方案。
您可以继续将Laravel Passport供应商文件夹中的每个 Illuminate \ Database \ Eloquent \ Model 更改为 Jenssegres \ Mongodb \ Eloquent \ Model (有大约6个文件,您将不得不进行更改),但是不建议这样做,因为当您尝试在生产服务器上推送此项目时,供应商文件夹将被忽略,您将不得不再次进行所有更改。同样,如果他们更改了某些内容并且您进行了更新,则所有更改都将丢失。
我推荐的另一种方法是使用 designmynight / laravel-mongodb-passport 软件包。该程序包将完成上述操作并将有效地执行此操作。安装也很简单。您可以浏览文档here,并可以立即启动它并运行它。
希望这可以解决您的问题。
文档链接:https://github.com/designmynight/laravel-mongodb-passport