Multiple row owners with Role functionality in use

I’m trying to build a set up, where I organisations can see their data only, but some users (depending on their role such as “Admin”) can see everything.

I have an “Organisation” column set as row owner in my users table, and that same column applied to the role in layout editor from the user profile screen.

This alone works great. Each organisation can see their own data, while others are grayed out.

When I add a “Role” column and set that as a row owner, however, I can’t get the admin functionality I’m looking to set up to work.

Is it possible to have multiple row owners when using the role functionality?

The person here seems to have something similar working, but I can’t replicate it: Is there a simpler way: Row-Owners - #11 by Darren_Murphy

Can you show me a screen shot of your User Profiles configuration?

It looks like you are trying to use two separate columns as a Role - you can’t do that.
If you want an Admin to have access to all rows in a table where row owners are applied, essentially you need two things:

  • The Admin user must have a role of “Admin”
  • There must be a column in the table with Row Owners applied, with the word “Admin” in every row.

Here it is:

I’ve used @Robert_Petitto’s video on row owners as inspiration: https://youtu.be/sclFwC6eov8?si=6CURNqQqBpkgbiHW&t=1374

This comment of yours: “There must be a column in the table with Row Owners applied, with the word “Admin” in every row.” got it working for me.

I removed row owner from the Role column and applied it to the Admin access column instead.

I wonder if it would be possible to add holding organizations as another organizational layer, so that:

  • Users own holding orgs (1 to many relation)
  • Holding orgs own organizations (1 to many relation)
  • Organazations has knowledge bases, creates tasks, events, etc.

There should be users who can access any holding org and organizations and other users who can only access certain organizations within a holding org. (say, they’re a manager of that organization).

This question is regarding the row owner functionality, as in data security and app performance, and not in app permissions and/or visibility.

Sounds like you might need multiple roles per user. The only way to get this is to use a Google Sheet for your User Profiles table, and create a non-computed array column to use for the Role. This would allow you to assign up to 9 roles per user.

Would I only need to have the users table in a Google sheet, or would I need to build all tables in Google sheets as opposed to Glide tables?

Just the users table.

1 Like

Got it, thanks!

Just circling back here…

So I’ve set up a test Google Sheet as follows:

Which shows up in Glide as follows:

The problem is, I don’t have the “Make row owner” option?

Here’s how it looks on the profile screen:

I’m having a hard time finding resources on achieving this setup. If you have any to share, pleas let me know

I found a solution:

I simply had to delete the values from the Rest. 1, Rest 2., etc. cells in the Google sheet for the “Rest.” column to show up in the role choice component. After setting it, I was able to make the the column row owner.

Why do you need the role column to be a row owner? There is normally no reason for that.

It’s not a role column in the table. There it contains values of restaurant names (rest. 1, rest. 2, etc.). Glide has compiled this into a “Rest.” column automatically, which I’ve set as the “Role” in the users profile:

I have “Role” column in my users table as well, but that’s meant for handling add/edit/delete permissions and filter data even further on top of the row owner functionality.

Yes, so then by definition it is the Role column, as you’ve configured it as such in your User Profile. My point was that there should be no need to apply Row Owners to this column.

Yep, that’s fine.

Okay, I understand. I’m using it as the Role column, and will start using this terminology going forward.

You’re right, that I don’t need to apply Row owner to the Role column in the users table. I’m not sure where I’ve picked that up, but I thought that was the last step in “activating” this Role functionality.

Nevertheless, everything seems to be working now.

Thank you very much for you assistance!

2 Likes