Comments (3)
Hi there,
Thanks for reporting but it looks like this is a question which can be asked on a support channel. Please only use this issue tracker for reporting bugs with the library itself. If you have a question on how to use functionality provided by this repo you can try one of the following channels:
However, this issue will not be locked and everyone is still free to discuss solutions to your problem!
Thanks.
from cashier-paddle.
@driesvints Hi Dries.
I'm starting to think this is actually a package issue.
The amount of duplicate queries drops from 8 to 0 when making the following change. (line)
$this->subscriptions()->where('name', $name)->first();
$this->subscriptions->where('name', $name)->first();
This is also how it is done in the Stripe version of Cashier. (line)
/**
* Get a subscription instance by name.
*
* @param string $name
* @return \Laravel\Cashier\Subscription|null
*/
public function subscription($name = 'default')
{
return $this->subscriptions->sortByDesc(function (Subscription $subscription) {
return $subscription->created_at->getTimestamp();
})->first(function (Subscription $subscription) use ($name) {
return $subscription->name === $name;
});
}
By using the function you always access the relationship and make a new query instead of accessing the previously loaded results.
Could you confirm this isn't a bug?
I took the liberty to create a PR so this can quickly be resolved in case you agree with me.
from cashier-paddle.
Hey Yoeri. Your change would load all subscriptions into memory and do the where clause on the collection rather than the query builder. This would raise its own sets of problems (see Taylor's response on your PR).
I think the code in Cashier Stripe is for legacy purposes but not entirely sure. I'm attempting a PR to simplify it in Cashier Stripe: laravel/cashier-stripe#1002
from cashier-paddle.
Related Issues (20)
- Allow reusing an existing customer through `PerformsCharges::subscribe()` HOT 8
- createAsCustomerIfNotExists HOT 4
- Disable generic trial once customer is subscribed HOT 1
- Fix incrementQuantity() & decrementQuantity() Throwing Error HOT 5
- Notice in the docs about "default checkout URL" HOT 1
- [2.x] add end at of the subscription period HOT 1
- Fix nextPayment() total HOT 1
- returnTo function added to checkout does not redirect HOT 6
- Bill for non-catalog items HOT 4
- Issues with subscriptions "price_id must be a string" HOT 4
- Webhook duplicating the response statuses HOT 8
- Cashier::findBillable($customerId) not returning anythying HOT 2
- Get subscription payment method HOT 1
- Add support for authentication via client-side tokens HOT 1
- Paddle webhook handler doesnt work HOT 3
- Laravel cashier-paddle package conflict with passport Auth Header HOT 1
- Paddle with Passport giving: Authentication header included, but incorrectly formatted HOT 3
- Pausing Subscriptions HOT 1
- Applying a discount on checkout HOT 1
- Problem with billing API - Transaction not created in the db HOT 13
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cashier-paddle.