I have an app where a person can mark another person as a favorite.
The users want to be able to tag their favorites but they want to be able to generate their own list of tags (add/edit/remove). Users should not be able to view/interact with tags created by other users.
I’m sure I could create another table to host ALL tags, record their email address, and display the list as a “choice” component, but then they don’t have the ability to add/edit/delete without me adding a page/section for tag management where I display a “collection” of tags via a tag table.
I want to keep this as simple as possible. Thinking I could somehow use a user-specific array? Not sure. What’s the best way to go about this?
Yes, a User Specific array would work, but you would need a Helper Table to expand that array into a list so that they could select from a list of tags, as well as manage the list.
I’d recommend using a User Specific Multiple Files column in the User Profile row to hold the array of tags. To add a tag to the array, use a Make Array column with a Set Column values action. And to remove a tag from the array, use a Remove Element column with a Set Column Values action.
For the Helper Table, you could utilise the Miracle Method.
1 Like
Hey Darren, I am trying to put the pieces together but this feels really complex and I am unsure of which pieces I need to take from the Miracle Method video to apply to the rest of your suggestions. Also, what would the UI look like to display this? What components would I use?
Let me know!
Yeah, it’s not a trivial thing to setup.
I built a template to demonstrate how to manage dynamic tags some time back.
It’s probably not exactly what you want, but it might be close.
You’re welcome to make a copy and study it. Link below:
I should point out that when the above template was made, the Multiple Files column wasn’t available, so it uses Joined Lists of Tags and Split Text columns to create the arrays. That could be simplified significantly now by using the methods I described in my earlier reply:
1 Like