Manifest.json is not getting saved.

art_in_sky
art_in_sky Contributor

I converted a Brick to an App. The Brick was working fine and was able to store input data to an App DB collection. However, after the conversion, I'm no longer able to save any data—sync is disabled. I tried changing the collection and enabling sync in the Manifest GUI/JSON editor, but it doesn't save and throws an error saying that no schema is provided.

Can someone help me identify the issue?

Tagged:

Answers

  • The brick probably doesn't use the schema. When converted to an App, without a schema defined, it doesn't know the structure to save the changes. So it wants you declare the schema for the collection.

    There should be a manifest.json file you can add the schema property to. Something like:

    {
    "collections": {
    "myCollection": {
    "type": "dynamic",
    "sync": true,
    "schema": {
    "type": "object",
    "properties": {
    "id": { "type": "string" },
    "name": { "type": "string" },
    "age": { "type": "number" }
    },
    "required": ["id", "name"]
    }
    }
    }
    }

    When I was last messing with collections, I had to switch from the GUI to the JSON editor to define the schema.

    ** Was this post helpful? Click Agree or Like below. **
    ** Did this solve your problem? Accept it as a solution! **

  • art_in_sky
    art_in_sky Contributor

    @ArborRose

    I had previously converted a Brick, and it worked without a schema defined in the manifest.json file.
    I just checked, and there is no schema definition present in the manifest file for that app.

  • Did the other one have a placeholder in the manifest? Something like:

    "schema": {
    "type": "object",
    "properties": {}
    }

    ** Was this post helpful? Click Agree or Like below. **
    ** Did this solve your problem? Accept it as a solution! **

  • art_in_sky
    art_in_sky Contributor

    @ArborRose No, it does not