我没有为我的订阅使用用户模型,因此在切换计划时遇到了麻烦,因为订阅与模型的关系定义为
/**
* Get the user that owns the subscription.
*/
public function user()
{
$model = getenv('BRAINTREE_MODEL') ?: config('services.braintree.model');
return $this->belongsTo($model, 'user_id');
}
在 Subscription.php 中硬编码了 user_id。https://github.com/laravel/cashier-braintree/blob/2.0/src/Subscription.php
我使用的是 Braintree 版本的 Cashier,但我确信它与 Stripe 相同。
我已经编辑了我知道不是最佳实践并且不能用于自动部署的供应商包。
如何扩展此类以覆盖 Laravel 中的方法?
我找到了很多关于如何扩展类的指南,但是由于这是通过一个特征实现的,所以我不知道有什么方法可以扩展这个特征?
任何指针将不胜感激。