I keep figuring out how to stop this from happening and then it comes back again. Anyone know how to stop getting duplicates, it happens immediately when someone signs up?
User profile rows generate automatically when a user signs in for the first time. They should not be duplicating on their own. Are you sure that you don’t have some action or form set up somewhere that adds a row whenever someone submits a form or clicks on a button or something else that adds a row.
So their email automatically registers when they sign into the app right , and then i have them fill out a profile. In the profile i don’t want them to have to re-enter their email so i have it autofilled for them (from when they signed in). Is that considered making a duplicate?
if you are using a form for that… then yes
you need to use a custom action to set column values
Yeah, it depend on how you are having them “fill out a profile”. Since the row is created for you, you should be editing the existing row instead of adding a row. That can be done with an edit action or a detail screen with entry components. Either way, there is no reason for you to have to have an email entry component on the screen. That can be removed. If it’s not there, then they can’t change it.
Ok I just took a look at it, and turns out, I don’t even have the email auto populated, I do have it as a column, and its still duplicating…
OK, so it looks like you are using all of the special value components, including the email of the signed in user. Since you are editing an existing row that should already have the email populated, there is no need to repopulate it using the special value.
I also see that you are generating a new Unique Identifier every time they edit their profile. I’m not sure where this applies for your use case, but I would think that you wouldn’t need that either and could just rely on Row ID’s which will never change. That is, unless you have a particular reason for needing to reassign a Unique ID to a user’s row whenever they edit it. I will assume that the Current Date/Time is fine as you may want to know when they user updated their profile. However, it will change every time they edit the profile.
Special Value components are automatic. You don’t see them and they will automatically populate columns in the table when the form is submitted.
Now I have two theories what could be happening:
- One is that you are overwriting the email with the same email, but for some reason it confuses glide and decides that it needs to generate a new row the next time that a user signs in.
- The second theory (and hopefully the most likely scenario) is that you have and On Submit action on your edit screen that is set to add a row. People have a tendency to think that they need an ‘on submit’ action to add or update rows. That is not the case. Depending on the type of form you are using, they are already designed to add or update rows when you click on the Submit or Done button. There is usually no need to add an additional ‘on submit’ action. Can you verify if you have an ‘on submit’ action in your edit form?
Other than that, I would have to think that something is still configured in your app to add new rows.
Hi! Ok, I don’t have an ‘on submit’ add row action. I have the action set to ‘none’. But i don’t know why i had the unique key indicator in there, i think i was trying to use it for something that was a moot point, so i just deleted that. I will try deleting the email special column and sign up as a new user and see what happens.
Strangely, it only happens once, i sign in all the time and it doesn’t keep re-adding my email over and over
ok getting rid of the email in the special column made it even weirder. I remember now that’s why i added the column there…
So I signed up with the email email@example.com and the given code. Then I filled out my profile as shown in the picture, and it automatically made the profile connect to “the next available email” which was my first duplicate email in the datebase. So the form does not automatically connect to the originally provided email which is why i created the email column to try to fix it. I thought I did but now its happening again!
OK, it sounds like it’s a filtering issue. How do you get to that edit form? Is the prior screen filtered so the email is the ‘signed in user’? Seems to me like you may be filtering the screen based on if the name is empty or not??? That’s not reliable, because when the next user signs in it attaches to the next row that doesn’t have the name filled, and they end up overwriting someone else’s profile row. Instead you should filter where email is signed in user, so a user will only attach to their own row instead of someone else’s.
How do you know everything? lol. So this is the very first screen and I do, in fact, have it set up for when the user name is empty. Now i did that, bc i never want someone to see this screen again after they fill out their profile, so how should I change it so that it accommodates attaching to the email and going away once they fill out a profile?
Hehe, because I’ve seen a lot of things.
I see that you already have the tab visibility set to only show the tab when the Name is empty. That part is good and will hide the entire tab once they have filled in their name.
It’s the filter that is the problem. The filter determines which row you want to display and edit. The filter is what you need to change to filter where email is signed in user. That will ensure that the screen is attaching to the correct row at all times, and the user will only be able to see and edit the row that contains their own email. Filtering by name means it could filter to the first row that does not contain a name…regardless of who’s row it is and what email is in that row.
It may have worked initially, but what most likely started happening, is things got out of sync, causing a user to edit the wrong row and overwrite the email, which cause glide to have to generate a new row for the user who had their email erased. And it kept continuing. That’s my guess.
ok so i did that, but then my text and ‘edit form’ ability went away
my template text has no visibility conditions and then edit form was set to if “user name is empty” as well. So then i tried to remove the condition all together, but didnt work, then i tried to switch it to the same as the filter but that didnt work?
You are previewing as ‘anyone’ so there is no row that it can attach to. Preview as a user that does not have the name filled in.
ahh you’re right, ok cool!! THANKS
This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.