Hello everyone.
Hope this is not a stupid question, and I have searched all over and got several options, but I simply cannot see what is most correct or best.
What I would like, I have a button on the front page where the user can click to enter their task list, this is where my problem comes, how do I make it so that only the tasks that the giving user has created they can see .
Is it possible that I have understood it correctly that you cannot do that on the free version?
Either way, you need a column in your Tasks table that uniquely identifies the user that created each task. The user email address is commonly used, or sometimes a UserID (RowID from the Users table).
Once you have the above, then you have two options:
Option 1 (secure): Apply Row Owners to the email column in your Tasks table. Thatâs it, done. Each user will only see their own Tasks, and it will be impossible for a user to see any other users tasks.
Option 2 (not secure): Use filtering. Apply a filter to your Collection. It should be something like âEmail is Signed in Userâ
Hello
thanks for your prompt reply.
Thatâs right, there must of course be an ID number for each item, its me where are stupid and forgotit
I always used in asp coding e.g. when they created a question, then the userid was saved in the table for their question as an OwnerID so it was linked to the UserenID
Iâll just watch those videos and see if I donât get it this time. have otherwise looked at many. and can see there are several ways it is explained.
What I emphasize is that it must be the most secure as it is the userâs data / info. and the thing about making it invisible is not visible on the screen but is still downloadable and with a 3rd party tool you can access that information.
In that case, you should use the first option - Row Owners.
With Row Owners applied, each user device will only download those rows that are owned by the signed in user. So it becomes impossible for other users to get at that data, as it doesnât exist on their device.
It doesnât solve my problem the one with rowID.
Regardless of who I log in with, I can see what the different people have created.
Maybe I didnât explain it well enough.
You have a page where user1 creates a task.
When User2 logs in, he should not be able to see User1âs task.
But I, as an admin, can see all the tasks that have been created by going to the individual profile
I have created a Role in the Users table where I have Admin and Members.
But it must still be the case that User1 cannot see what tasks User2 has created.
And I just tried it in the 2 guides it didnât help.
Now I know itâs not aspen. but there they would do that
If UserLevel=âAdminâ then âshow dataâ else
Than If.
However, that was just a short description
Add a column called âAdminâ in the Tasks table, always write âAdminâ to that column when you create a new task. You can follow these steps.
Set that column as âRow ownerâ.
Also use a special form value to pass ̶t̶h̶e̶ ̶r̶o̶w̶I̶D̶ of the user who created the task to the Tasks table. (Edit: pass the email, not the rowID)
Also set that column as âRow ownerâ.
In the Users table, make sure you have already set the âRoleâ column with values being Admin and Members.
That wonât work unless they give each user their RowID as a Role.
I think what they should do instead is pass the signed in users email address with the form into an email column in the Tasks table, and make that a Row Owner. Then it wonât be necessary to give ânormalâ users as Role - only Admins will need a Role.
Thanks for the answer, but Iâm lost there, I simply canât understand it and Iâm probably stupid, but what you wrote I definitely believe is right, but it doesnât make sense to me at all since I probably canât see the visual for me.
I absolutely do not doubt your explanation, but itâs just me who knows how to do it. sorry
If you can provide two screen shots - one of your users table, and one of your tasks table - we can probably give you some more detailed step by step instructions.
Okay, there are a few things we need to fix here. Letâs take them one by one.
The below column in your Tasks table should be an Email type. Click at the top to edit it and change the Type. Then edit it again and select âMake Row Ownerâ.
To automatically set the users email when the form is submitted, you need to add a special component to the form screen. Click on the + to add a component, and look for the following one:
Add that, and configure it to write to the email column in your Tasks table.
To automatically set the OwnerAdmin column, add a Text Entry component to your form. Configure it to write to the OwnerAdmin column, and give it a default value of Admin. You also need to set a visibility condition on this so that it will always be hidden. You can use anything that will never be true, eg âSome column is XXXXXXXâ (or whatever).
Finally, you need to ensure that Roles are correctly setup in your User Profiles configuration. Refer to the below:
I donât understand this here:
To automatically set the OwnerAdmin column, add a Text Entry component to your form. Configure it to write to the OwnerAdmin column, and give it a default value of Admin. You also need to set a visibility condition on this so that it will always be hidden. You can use anything that will never be true, eg âSome column is XXXXXXâ (or whatever).
Because it is already in shape. since a column with the name AdminOwner has been created,then hide the field.
There in invisibility what to choose there? because I can see there are several of them that hide the field, but which is the right one
Like @Darren_Murphy said, you can choose anything as long as itâs never true. I like to use RowID is empty because Row IDâs will never be empty, so itâs a condition that would never be true. Or do something like RowID is âhappy dayâ because a Row ID will never contain the value âhappy dayâ.
the picture i have oploade whit my user table. are this correct setup.?
It does not work.
just tried to go on with the other user and i can still see what user1 has created
And have done what you have written. so I really donât know what it is I should do differently or what I am doing that is wrong. because its not work
Yes, as written earlier, it was probably me who made the mistake and didnât doubt what you said either, thatâs why I asked if you could if I had made a stupid mistake.
And I had to see that true.
because where it shows the list of what was created, I had set the filter incorrectly.
now it says like this
OwnerID
IS User Profile - Row ID
so now it will only be shown to the person who created it. should just test if it works so admin can see it
Iâm trying to make a filter so that admin can see them all. but as soon as I choose AdminOwner, it doesnât matter what I choose in the filter list, I donât get those that havenât been created by the admin.
how can that be? In AdminOwner where alm. member has created, the field is empty, but admin says admin. how to solve it.
Sorry, should have said passing the email, not the rowID. I believe they can work in tandem (the âAdminâ column and the âRow owner emailâ column). Edited my original comment.