
Hello, how can I check if the Email or the username already exists and give seperate error messages?


sorry i mean name not username

Name is not unique and two users can have the same name

my problem is just that if i do a try catch it just says that one of them already exists but i dont know which of them

That's good

but i want it to be unique (app side)

try {
await account().create(
userId: ID.unique(),
email: email,
password: password,
name: _usernameController.text,
);
} catch (error) {
final appwriteError = error as AppwriteException;
throw Exception(appwriteError.message);
}```

What you mean one of them, you're creating many in a loop?

theres an input for email and for username (name)
if the name already exists it says this:
Error: Exception: A user with the same id, email, or phone already exists in this project.
if the email already exists it says this:
Error: Exception: A user with the same id, email, or phone already exists in this project.

For this, the best would be to create a function that will run (trigger) after each user change You'll need to create another Collection with the current user name
So the flow can be like so
- When the user is setting his name for the first time, you then, insert that value into the
usernames
collection. - When the user is updating his name, the function checks if that username is taken, if so it will change it to the old one back

ah

The name is not unique So this error can mean only:
- ID exist
- Email exist
- Phone exist
As you don't use the phone you can eliminate the one, For ID to exist is pretty rare, so it means the email exist

I probably try it tomorrow, so i'l probably ask something then
but thanks for your support

:appwritefire:
Recommended threads
- Still an issue? On user deletion, target...
This has been mentioned here: https://discord.com/channels/564160730845151244/1295830646039515146 and as a Github issue here: https://github.com/appwrite/appwri...
- Appwrite database is rounding int values
Hi, i just noticed that appwrite is rounding the value 608542412536545279 to 608542412536545300 in my int array. It seems to somewhat relate to this github iss...
- OAuth fails with Invalid Response or inv...
Im currently trying to use the Discord Oauth but i cant find a way to make it work. I followed the docs and set up the discord oauth application and enabled it...
