-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Added support for JSON arrays #3228
Conversation
Fixes the issue #2977, which sails would convert an array to an object and subsequently fail validation.
nice work @Hanifb |
@Hanifb awesome--a test for this in |
Added testing for JSON arrays
@sgress454 Done! |
Pass array in POST to body instead of building object to handle it right in the sails main app.
@dominicrico @Hanifb can you guys come up with a test that ensures this scenario passes? |
@Hanifb are you doing this? |
Already did, se my PL on sails-hook-sockets: balderdashy/sails-hook-sockets#10 |
👍 |
@@ -40,7 +40,7 @@ module.exports = function createRecord (req, res) { | |||
Model.subscribe(req, newInstance); | |||
Model.introduce(newInstance); | |||
} | |||
Model.publishCreate(newInstance.toJSON(), !req.options.mirror && req); | |||
Model.publishCreate(newInstance, !req.options.mirror && req); | |||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Hanifb What was the thinking behind this? Is it somehow necessary to get arrays to work? By pushing this logic into publishCreate
, we force users of that method to pass in model instances instead of being able to send in plain objects. Sorry I didn't catch this earlier.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@sgress454 Wow, i dont even remember. Actually it is kinda unneccessary, because the publishCreateSingle//former publishCreate already does that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@sgress454 Well now i remember, the reason is because how pluralize method works, it needs an instance of a model. Do you think we should remove the call to pluralize and instead use a simple if(!_.isArray(instance)){ [instance] }
?
Fixes the issue #2977, which sails would convert an
array to an object and subsequently fail validation.