2017-01-31 7 views
0

Cashier documentation довольно ясно, как создать подписку для пользователя, но не очень хорошо объясняет, как мы можем ее расширить.Как использовать подписки Laravel Cashier через красноречивые отношения?

То, что я хочу сделать, в значительной степени напоминает команды Github. У меня есть организации (или команды), и вы хотите ежемесячно выставлять один назначенный пользователь в организации.

У меня есть belongsToMany взаимоотношения между моей организацией и ее пользователями, и у организации есть payer_id раздел, который определяет, что пользователь должен позаботиться о ежемесячной оплате организации. Я не думаю, что это неправильно, но скажите мне, следует ли пересмотреть эту часть.

Следующая часть, которую я не получаю. То, что я думал, использовал поезд Billable в моей модели пользователя, но имеющий метод newSubscription() в моей модели организации, который затем передавал бы переменные пользователю? Но это неправильно.

Это pull request, кажется, приносит решение, но я до сих пор не понимаю, куда мне идти.

ответ

0

Насколько я понял, кассир (пока) не обеспечивает такую ​​гибкость. Для меня (это мое личное мнение) кассир - это своего рода реализация счастливого случая. Если вам нужна простая подписка на вашу модель пользователя, отбросьте ее, и она будет работать отлично.

Но если вам нужно что-то более индивидуальное, я бы предпочел пропустить слой кассира и работать напрямую с поставщиками платежей sdk. Так как вы, вероятно, используете полосу, посмотрите на их docs и их php sdk, он работает как шарм. И это дает вам гибкость в реализации решения, которое соответствует вашим требованиям.

Опять же, только мои 2 цента. Надеюсь, этот вклад поможет вам.