拉拉维尔 5.4 收银员添加订阅



我完全按照Laravel文档通过收银员创建新订阅。我的控制器如下所示:

public function saveSubscription(Request $request)
{
$plan = Plan::find($request->input('plan'));
//$user_id = Auth::id();
//$user = User::find($user_id); // work but ugly
//$user = $request->user(); // same error
$user = Auth::user();
$user->newSubscription($plan->name, $plan->name)->create($request->input('stripeToken'), [
'email' => $request->input('stripeEmail'),
]);

所有这些从AuthRequest获取User模型的尝试都失败,并显示以下错误:

Call to undefined method IlluminateDatabaseQueryBuilder::newSubscription()

唯一有效的方法是通过Auth::id()调用获取用户 ID,然后手动查找它。

我错过了什么吗?

您需要将Billable特征添加到用户模型中

use LaravelCashierBillable;
class User extends Authenticatable
{
use Billable;
}

最新更新