Laravel Cashier - 如何修改 cashier 以在用户数据库中存储附加参数
Laravel Cashier -How to Modify cashier to store additional parameter in user database
我正在使用 Laravel Cashier 和 Stripe 来管理订阅。用户在注册和订阅计划时会输入他们的信用卡信息,但我也希望他们在订阅特定计划时将一些积分存入他们的帐户。
例如,如果用户订阅 Bronze
套餐,我想在订阅成功完成后将 300 credits
(比方说)放入他们的帐户。
我怎样才能做到这一点??任何建议。
目前我的订阅码是这样的
订阅控制器
// create the users subscription
// grab the credit card token
$ccToken = $request->input('cc_token');
$plan = $request->input('plan');
// create the subscription
try {
$user->newSubscription('main', 'plan_CWtS4yCNvo5vAj')->create($ccToken, [
'email' => $user->email
]);
} catch (\Exception $e) {
return back()->withErrors(['message' => 'Error creating subscription.'.$e->getMessage()]);
}
return redirect()->back()->with('success','Successfully subscribed');
由于用户数据库由 laravel 收银员本身填充,一旦订阅完成,我不知道如何更改。任何帮助表示赞赏。谢谢
create()
方法 returns 创建行的 Cashier Subscribtion 模型实例,因此您可以从 create()
收集返回值到 ( $subscribtion ) 变量中然后保存在这个实例中你想要的任何东西:
$subscribtion = $user->newSubscription('main', 'plan_CWtS4yCNvo5vAj')
->create($ccToken, [
'email' => $user->email
]);
$subscribtion->credits = 300;
//some other stuff
$subscribtion->save();
我正在使用 Laravel Cashier 和 Stripe 来管理订阅。用户在注册和订阅计划时会输入他们的信用卡信息,但我也希望他们在订阅特定计划时将一些积分存入他们的帐户。
例如,如果用户订阅 Bronze
套餐,我想在订阅成功完成后将 300 credits
(比方说)放入他们的帐户。
我怎样才能做到这一点??任何建议。
目前我的订阅码是这样的
订阅控制器
// create the users subscription
// grab the credit card token
$ccToken = $request->input('cc_token');
$plan = $request->input('plan');
// create the subscription
try {
$user->newSubscription('main', 'plan_CWtS4yCNvo5vAj')->create($ccToken, [
'email' => $user->email
]);
} catch (\Exception $e) {
return back()->withErrors(['message' => 'Error creating subscription.'.$e->getMessage()]);
}
return redirect()->back()->with('success','Successfully subscribed');
由于用户数据库由 laravel 收银员本身填充,一旦订阅完成,我不知道如何更改。任何帮助表示赞赏。谢谢
create()
方法 returns 创建行的 Cashier Subscribtion 模型实例,因此您可以从 create()
收集返回值到 ( $subscribtion ) 变量中然后保存在这个实例中你想要的任何东西:
$subscribtion = $user->newSubscription('main', 'plan_CWtS4yCNvo5vAj')
->create($ccToken, [
'email' => $user->email
]);
$subscribtion->credits = 300;
//some other stuff
$subscribtion->save();