2

基本上我有这个问题不断发生。

用户订阅后,一切正常。他可以取消/更改订阅没问题。

但是,一旦他们更改了订阅一次,我就无法调用 swap 或 cancel 而不会在 null 上引发错误

在 null 上调用成员函数 cancelNow() 在 null 上调用成员函数 Swap()

两者都意味着 $user->subscription($membership_group) = null。

这可能是什么原因造成的?

4

1 回答 1

1

这是我找到的解决方案,非常丑陋!我会报告这个错误。

    $user->subscription('current_plan')->swap('plan_to_subscribe');
    $user->save();

    // Messed up work around cause of swap method bug
    DB::update('update subscriptions set name = ? where user_id = ?', [
        $plan,
        $user->id
    ]);

无论如何,暂时有效...

另外我想这已经修复了:https ://github.com/laravel/cashier/commit/1e87a60f1bf5c8981730d2481350f74fccaf0947#diff-dde586b4ea0798ea4a467b9eba070a7e

只等发布。

于 2018-08-11T22:25:37.337 回答