Normal Output:
"questions": {
"total": 2,
"documents": [
{
"order": 1,
"$id": "quiz_question_1",
"questionId": {
"$id": "question_1",
"$databaseId": "...",
"$collectionId": "..."
}
},
{
"order": 2,
"$id": "quiz_question_2",
"questionId": {
"$id": "question_2",
"$databaseId": "...",
"$collectionId": "..."
}
}
]
}
but if i do
Query.select(["question", "order"]);
it throws an error
AppwriteException: Cannot select attributes: questionId
code: 400,
type: 'general_query_invalid',
response: {
message: 'Cannot select attributes: questionId',
code: 400,
type: 'general_query_invalid',
version: '1.6.0'
}
sorry for typo: the query was
Query.select(["questionId", "order"]);
The issue seems to arise from attempting to select nested attributes, such as questionId
Since Query.select isn't able to handle nested attributes directly,
You can work around this by fetching the entire document and then extracting the specific fields you need in your application logic.
const response = await database.listDocuments("<DATABASE_ID>", "<COLLECTION_ID>");
const documents = response.documents.map(doc => ({
order: doc.order,
questionId: doc.questionId
}));
console.log(documents);
This way, you get all the necessary data and then filter out the required attributes.
thank you @Guri
Recommended threads
- SMS - Github Student Pack
I have a project on Appwrite Github Student Pack but unable to send any message as I get error: "Phone authentication limit for your organization has exceeded. ...
- Relationship data Not showing on update ...
Version : 1.9.0 OS/System : Windows10/Docker Database : MongoDB Clean Zero Installation The first thing I did in the testing process was create a category and...
- Dart runtime functions are timing out an...
My appwrite function is not executing at all and showing the error in error logs: I tried redeploying. Still no luck. I have set the function to ise maximum re...