Declare 'amount' as required on ContributionRecur api #13290
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Overview
Declare amount as a required field on Contribution Recur create api - this improves the error message when it is not passed in but does not change it
Before
Calling ContributionRecur.create with neither id or amount fails with the message
[nativecode=1364 ** Field 'amount' doesn't have a default value]
After
Calling ContributionRecur.create with neither id or amount fails with the message
Mandatory key(s) missing from params array: amount
Technical Details
The field is not required at the DB level (it probably should be that too) but
it has no default value so you wind up with
[nativecode=1364 ** Field 'amount' doesn't have a default value]
Note that making it required at the DB level won't change the need for this
patch & is separate. The api declares what is required at the api level
calculated in the BAO
Comments
This is really a bug fix rather than a change