Add dynamicUpdate method #144
Open
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.
I've run into a situation a couple times recently where I end up with some code sprawl trying to update a row in Dynamo because I may only have certain fields available to update - maybe I have one case where I have an object to update with a
fooproperty defined, but it's missing/undefined in another. When defining the parameters for an update call, you have to outline all of the keys and values to update. Dynamo will throw an error if any are missing because the value is undefined.This PR adds a new method to dyno called dynamicUpdate that takes an object that represents all of the keys and values you want a row to contain after it is updated and dynamically builds part of the update parameters. It will iterate over each property in your object and build up the
ExpressionAttributeNames,ExpressionAttributeValuesandUpdateExpressionproperties. You provide any other update parameters needed (like the Key).