Hi @Alex2
Welcome to the Backendless community!
The PersistenceItem
class expects the first argument as an object of the data of the instance
So, if you remove constructors it resolve all instances automatically
/*Created on 12/21/2023 12:39:10.*/
/**
* @property {string} text
* @property {string} restaurant
* @property {FileParameter} preview
* @property {string} title
*/
class CreatePostDTO extends Backendless.ServerCode.PersistenceItem {
}
Backendless.ServerCode.addType(CreatePostDTO);
/**
* @property {string} data
* @property {string} name
*/
class FileParameter extends Backendless.ServerCode.PersistenceItem {
getName(){
return this.name
}
};
Backendless.ServerCode.addType(FileParameter);
class MyService{
/**
* @route POST /restaurant/post
* @param {CreatePostDTO} post
*/
async createRestaurantPost(post) {
console.log('post', post)
console.log('post.preview.getName', post.preview.getName())
return post
}
}
Backendless.ServerCode.addService(MyService)
13:16:41.504 | SERVER_CODE | INFO | [35982] post CreatePostDTO { ___class: 'CreatePostDTO', preview: FileParameter { ___class: 'FileParameter', data: 'string', name: 'string' }, restaurant: 'string', text: 'string', title: 'string' }
13:16:41.504 | SERVER_CODE | INFO | [35982] post.preview.getName string