Description
Issue Description
Saving a User
pointer in an array saves the whole object.
Possibly related to #691.
Steps to reproduce
- Open Parse Dashboard.
- Add a class with a column of type array.
- Add a pointer value of an existing user to the array, e.g.
[{
"__type": "Pointer",
"className": "_User",
"objectId": "EXISTING_OBJECT_ID"
}]
- Pointer is saved correctly (check directly in DB, not via parse dashboard)
- Click on refresh in parse dashboard data browser.
- Item in array is not displayed as
Pointer
but asObject
containing all fields, e.g.
[{
"__type": "Object",
"className": "_User",
"objectId": "EXISTING_OBJECT_ID",
(+ all other fields of the object)
}]
- Pointer is still saved correctly in DB (check directly in DB, not via parse dashboard)
- Double click on array field in parse dashboard and exit editing mode
Pointer
has been replaced byObject
in DB
Notes:
-
This does not happen right after starting the server. It seems that the user needs to be cached or something. For me it happens when I do it in a class that contains a relation field where the user is added and I first add the user to an array there. The issue then occurs in every other class as well. I haven't quite nailed down the pattern yet.
-
The class where it occurs has no beforeSave / afterSave hook.
-
This actually seems to be a Parse Dashboard issue rather than a Parse Server issue.
Expected Results
Pointer value should be added to array as is.
Actual Outcome
The whole object is added to the array.
Environment Setup
-
Server
- parse-server version (Be specific! Don't say 'latest'.) : 3.4.4, 3.9.0
- parse-dashboard version (Be specific! Don't say 'latest'.) : 2.0.2
- Operating System: -
- Hardware: -
- Localhost or remote server? (AWS, Heroku, Azure, Digital Ocean, etc): -
-
Database
- MongoDB version: 3.6.12
- Storage engine: MongoDB
- Hardware: -
- Localhost or remote server? (AWS, mLab, ObjectRocket, Digital Ocean, etc): -
Logs/Trace
(none)