未定义类型 'Laravel\Cashier\Cashier'。intelephense(1009)

3

我是laravel的新手,我想在我的项目中集成订阅模块,目前为止我按照以下步骤操作:

  1. composer require laravel/cashier

  2. php artisan vendor:publish --tag="cashier-migrations"

  3. 更新用户模型

    use Laravel\Cashier\Billable;
    
    class User extends Authenticatable
    {
        use Billable;
    } 
  1. .env

    CASHIER_MODEL=App\Models\User


需要建议,我哪里做错了。

Undefined Laravel/Cashier/Cashier


有时候Intelephense无法识别新安装的包,我让它正常工作的方法是关闭IDE,然后重新打开。这样错误就不会再出现了。 - Marwane Ezzaze
2个回答

5

我也遇到过同样的问题。我关闭了我的IDE并重新启动它,错误消失了。 - sharad paudel

编辑:我可以确认重新启动VS Code是解决这个问题的方法。我也在使用Laravel / Cashier,并遇到了类似的情况。VS Code在实际的Billable trait文件中给我红色下划线:src/vendor/laravel/cashier/src/Billable.php和OP一样。看起来这不是一个“错误”,而是在VS Code中的一个小混淆 - 我有所有正确的“use”导入行。重新启动VS Code后,所有文件关联似乎都很好,所有的红色下划线都消失了。我之前也见过这种情况,在安装了“composer”后,需要重新启动才能使VS Code正常。- dogatonic


你的回答可以通过提供更多支持信息来改进。请编辑以添加进一步的细节,例如引用或文档,以便他人可以确认你的答案是正确的。您可以在帮助中心中找到有关如何编写良好答案的更多信息。 - Community
这并没有回答问题。一旦您拥有足够的声望,您就可以在任何帖子上发表评论; 相反,提供不需要询问者澄清的答案。- 来自审核 - Semih Arslanoglu

1
在逗号(,)后添加 Billable;使用 HasApiTokensHasFactoryNotifiable。写成如下形式:
use HasApiTokens, HasFactory, Notifiable, Billable;

谢谢,问题已解决。 - Adity salunkhe

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接