I’m currently learning Glide with the Explorer plan. Right now, I’m building a tournament-style feature where users vote for foods. At each stage, the selected food earns points, and in the end, the food with the highest score wins.
I’d like to add a reset or restart option, either after the game finishes or even midway through. However, I was told that with the Explorer plan, it’s not possible to update multiple rows at once. Is that correct?
If so, I’m wondering whether there’s any workaround that would allow me to implement this kind of functionality while still on the Explorer plan.
It depends. If you use a second table (B) to track progress and create a relation in the main table (A) that links all related rows from B to the current row in A, you can use the Delete Row action on that relation. Since the relation contains multiple linked rows, Glide will delete all of them at once, even on the Explorer plan, using a app interaction workflow.
The best solution on the Glide Explorer plan is to use a Reset Token system, because it allows you to reset the entire tournament without needing the “Update Multiple Rows” action, which isn’t available on your plan. Instead of wiping every food’s score directly, you create a “Reset Value” column in the User Profile and update only that single row whenever the user taps “Restart.” Each food row then checks this Reset Value using a Single Value column, and if the token doesn’t match the row’s stored value, the app treats that food as having a score of zero. This essentially creates a clean, fresh game state instantly both mid-game and after the final stage,while still staying completely compatible with the limitations of the Explorer plan. It’s fast, automatic, and doesn’t require touching multiple rows at once, making it the most reliable and professional reset method for your current plan.
Here’s a current working demo app that can be copied since my apps were all classic apps that were deprecated.
Here is the most recent conversation regarding this topic.
If done correctly, this can work with any type of values and not just booleans. Is truly is a lot of smoke and mirrors at the end of the day, but works well once everything is configured properly. I use it in a handful of my apps. I used to have a shopping cart concept app that allowed the cart to be easily “emptied” just by changing a parent cart ID. I currently use it for a project that tracks about 80+ steps that I need to perform where each step records a status and in some cases a date as well. One click of a button changes the parent ID which causes all steps to appear to be reset. In reality they aren’t actually reset, but if the ID stored in the child items differs from the parent item, then the values are reset only when navigating to that item detail screen. In some cases I also use custom AI components to handle the clearing of values once the IDs no longer match.
It’s hard to explain in detail, but the trick is in the use of a parent ID as well as actions and workflows that compare the parent ID to each item that stores a copy of that ID and sets or clears other values accordingly.