Is there a smart way to have the same page usable for both users and admin users able to use it for data on a particular users?
An example to explain what I mean:
Users are associated with companies
A “Locations” page shows a list of locations for a given company
User can edit any location associated with the company they are associated with
All good so far
If I use to app as my admin users though the locations page will show locations associated with my company. I’d like to be able to pass a particular company through in this case. I’m currently working aroung this maintaining 2 similar pages, but that doesn’t seem right.
I feel like I should be able to pass though “and company = xxx” from certain pages and have it ignore that when not present. I could then link those from a list of companies page only viewable by admin and have row owner continue to control who can see what.
I haven’t managed to achieve that though. Am I barking up the wrong tree?
I don’t understand the details of your issue, so I’ll answer with general ideas.
You can set visibility conditions at the tab level. So tabs can be viewed and hidden by user.
You can also set visibility conditions at the component level (elements of a screen). This could also be helpful if different users are to see the same tab, but some components on the page are to be seen by some users and not by others.
If you have groups of users who clearly are to have different viewing, writing, editing, and deleting rights, then you can use roles. A role is an ownership group.
If you already are familiar with all of this, then I wonder what the architecture of your table looks like. Depending on how you set up your tables, columns, ownership and roles, you might have made life more complicated for yourself than it needs to be.
Glide Docs has a lot of information about visibility conditions, row ownership and roles.
Maybe I didn’t explain that too well. I’m pretty confident in the structure. I’m comfortable with page visibility and row ownership. What I’m struggling with is navigation rather than permissions.
I’ll try to explain more clearly when I’m back at a keyboard