#[SOLVED] getting a error at fetching data from appwrite services

11 messages · Page 1 of 1 (latest)

grand frigate
#

Error :
DataService :: getExpenses :: error: AppwriteException: Server Error
at Client.<anonymous> (http://localhost:5173/node_modules/.vite/deps/appwrite.js?v=60898c8d:850:17)
at Generator.next (<anonymous>)
at fulfilled (http://localhost:5173/node_modules/.vite/deps/appwrite.js?v=60898c8d:488:24)

please help i need to retirve specific user data by using their userId
code :

async saveExpense({ expenseName, expense, expenseDate }) {
    try {
        const userId = localStorage.getItem('userId');

        if (!userId) {
            throw new Error("User not authenticated");
        }

        const data = {
            userId,
            expenseName,
            expense,
            expenseDate
        };

        return await this.databases.createDocument(
            conf.appwriteDatabaseId,
            conf.appwriteCollectionId,
            ID.unique(),
            data
        );
    } catch (error) {
        console.log("DataService :: saveExpense :: error: ", error);
        throw error;
    }
}

async getExpenses() {
    try {
        const userId = localStorage.getItem('userId');

        if (!userId) {
            throw new Error("User not authenticated");
        }

        const response = await this.databases.listDocuments(
            conf.appwriteDatabaseId,
            conf.appwriteCollectionId,
            ['*'],
            100,
            0,
            `userId=${userId}`
        );

        return response.documents;
    } catch (error) {
        console.log("DataService :: getExpenses :: error: ", error);
        throw error;
    }
}

}

const dataService = new DataService();
export default dataService;

torpid pelican
#

Also what's userID=${userId} for?

grand frigate
#

yes i am

#

userid is to retrieve data entered by specific user

torpid pelican
#

If so, it should be like this:

const response = await this.databases.listDocuments(
                conf.appwriteDatabaseId,
                conf.appwriteCollectionId,
                [
                  Query.limit(100),
                  Query.equal("userID",[userId]),
                ],
            );
grand frigate
torpid pelican
grand frigate
#

yes its working Thanku for helping me

torpid pelican