- When a user taps an announcement, their User ID is written to a User Specific Column (
usc-user) - Then there are 3 columns in the Announcements table that help dynamically build the list:
tp-first-user- this is a Template column that just mirrors the contents ofusc-usertp-subsequent-users- another Template column that contains the current contents ofRead By, a comma (,), andusc-userite-new-read-by- an if-then-else column that determines which of the two templates to use when the user marks the announcement as read. IfRead Byis empty, use the first one, otherwise use the second one.
- Then when the user taps the ‘Mark as Read’ button, the
Read Bycolumn is updated to the result of the if-then-else column.
Note that my method doesn’t remove users from the list when they mark an announcement as “Unread” (that wasn’t a requirement for my app). But @Lucas_Pires and @Robert_Petitto showed how this can be done with their “Trebuchet Method”. If you watch Bob’s video, you’ll see that he explicitly covers that step.