
How can use json type for attribute in collections?

you want to store json? then you can choose string and add maximum length. that is how I store json.

But when i want to add query to that stringfied json i need to get all data and then parse, but i want to get data from db with conditions not all data

as far as I know, you cannot query on json. appwrite uses SQL for storing collections. it is not pureplay noSQL db like mongo

So what i can do to implement this?

I am getting around this by creating an String attribute as an array with max length, before storing the data I use JSON.stringfy and convert the string to an array of strings with the max length. When I retrieve the data join the array of strings and parse it back to JSON. is a bit of a process 😅

if you're using js/ts here's the code for getting the array of strings to save it in appwrite db
export const splitJsonString = (
jsonString: string,
maxLength: number
): string[] => {
if (jsonString.length <= maxLength) {
return [jsonString];
}
const chunks: string[] = [];
let currentChunk = "";
for (const char of jsonString) {
// Check if adding the current character exceeds the maxLength
if (currentChunk.length + char.length <= maxLength) {
currentChunk += char;
} else {
// If adding the current character exceeds the maxLength, start a new chunk
chunks.push(currentChunk);
currentChunk = char;
}
}
// Push the last chunk if it is not empty
if (currentChunk.length > 0) {
chunks.push(currentChunk);
}
return chunks;
};

What exactly are you trying to store?
Recommended threads
- I can't register first user with appwrit...
Hi. I have installed appwrite in a docker container on windows and I cannot sign up with my first user. I fill in the details on the sign-up page but when I p...
- Custom SMS Provider Guide
Any Help on this Topic will be appriated https://github.com/appwrite/appwrite/issues/10637
- Hackathon Query
One of the requirements for the Hackathon is that the project must be deployed on Appwrite Sites. What if we build a Flutter/Compose Android App? Would that cou...
