Skip to content

beforeSave renders Relation column on object invalid on response.success() #1714

Closed
@meoz

Description

@meoz

Check out this issue for an ideal bug report. The closer your issue report is to that one, the more likely we are to be able to help, and the more likely we will be to fix the issue quickly!

For implementation related questions or technical support, please refer to the Stack Overflow and Server Fault communities. For database migration help, please file a bug report.

Make sure these boxes are checked before submitting your issue -- thanks for reporting issues back to Parse Server!

Environment Setup

using:
"parse": "~1.8.0",
"parse-server": "2.2.7"

I had the bug filed here parse-community/Parse-SDK-iOS-OSX#911
but I see now this is more of a bug in the cloud-code part of parse-server.

Steps to reproduce

Apparently the problem occurs when a beforeSave cloud function returns response.success() instead of response.success(request.object). When using the former on an object that contains a PFRelation, that PFRelation get's screwed up on the client side (becomes PFRelationOperation).

Unfortunately just using response.success(request.object) is not the solution. Using this will keep the PFRelation field intact but it will not save any data defined in the cloud function beforeSave method.

Here MyObject will not save (or create) the 'colorstring' column.

Parse.Cloud.beforeSave('MyObject', function(request, response) {
    request.object.set('colorstring', 'green');
        return response.success(request.object);
});

Here MyObject will save (or create) the 'colorstring' column and it will show up on the dashboard. But will render any PFRelation column on MyObject useless.

Parse.Cloud.beforeSave('MyObject', function(request, response) {
    request.object.set('colorstring', 'green');
        return response.success();
});

this issue seems to be similar: #1606

Logs/Trace

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions