I want to batch update users with a Many-to-Many field.
I use the user list with countdown timer method.
Adalo freezes (page non-responsive) every time I try to add the action to the timer.
It is critical to be able to do this.
There are currently only 200 users on the system.
What method can I do?
re: Firefox - no luck. Browser becomes unresponsive.
I also tried to make a new app connected to the original database. No luck.
Would a different computer have an effect? This computer is new but I suppose there are stronger ones.
Any other options? This is a serious problem. Is this normal?
Do I understand correctly, that you have a list of 200 records, all displayed? And on this list you have a countdown timer, which makes an update for a current record (and this update is M2M relationship)?
If yes - it won’t work in my opinion, sorry. Imagine that your browser tries to execute 200 operations at the same time, and these operations are pretty resource-intensive.
Based on my personal experience, mass update/delete with countdowns will work for 5-10-20 records, but for example when I was updating around 85 records at the same time (not a relationship!), it took around 30-40 seconds to proceed.
The only workaround I can imagine is that you somehow “split” the update procedure into several batches (say, 10 records at a time). The best way to do it will depend on your app setup details.
I want to update the Users table. Users have an MM relation with Languages (that they speak). I want to simply add the record English to Users. The list of users is filtered by a Boolean (“Admin?”). The list currently has ~220 records.
I could do it one-by-one. The problem is I have several tasks like this.
@Victor Thanks. That is so discouraging.
What is your method to batch update a table?
Alternatively, Is there a 3rd party tool that can be used for easier batch updating relationships?
Alternatively, Is there a programmatic way to make make a MM relationship into 1M relationships?
Well, if this update is kind of “one-off” operation and is done by someone with good understanding how the app (and Adalo) works - I would try to do the following:
create an update screen, put a list of users there, add a timer. Limit this list to 10-15 records.
to be on the safe side, for the “back” button don’t use link back, but rather link to the exact previous screen
visit this update screen 15 - 22 times
If you need to make such operations repeatedly in the app, then of course such method couldn’t be applied. Unfortunately, I’m not aware of any 3rd party apps which allow to update M2M relationships in Adalo databases (as I see via API it is not accessible).
Hmm. I created the update screen, limited the list to 10 items, and added the timer element. Then I tried to add the action to the element. It freezes every time.
Even if the list only has 1 user, I still cannot add the action to the timer element.
I can update a boolean with this method. It is the relational tables that freeze every time.
Finally I had some time to experiment with this - and I could not reproduce your issue. I’ve created similar environment in my experimental app - all worked.
Here is the video: Adalo experiments - many to many update languages and users - YouTube (still uploading & processing at the moment).
I wonder why this doesn’t work in your case, may be video could give you some ideas.