How to execute a rank-ordered list in Adalo?

Hi I didn’t see a component that would allow for this… Does anyone have a recommendation on how to enable a user to rank order a list? This Loom vid shows what I’m trying to accomplish:

Basically I’m now using this Adalo app to manage our hackathon events and when a new attendee signs up he/she should get a pre-event checklist of stuff to complete. One of those steps is to specify their top picks for which charities they want to work with at the event.

The way I’m storing the info I have a Users, Events and Participants collection. Participants stores all info for that User related to that Event. I can’t figure out how to pass the Participant through on the checklist screen though so that it allows me to log their team preferences on the subsequent screens. Is there some way to manually pass this through or another way to accomplish it?

1 Like

Hey, from the video it sounds like your issue isn’t exactly with ranking/ordering the list, but rather getting the right database object (“Participant”) to update, am I right?

I’m not sure I totally get your database structure because it’s not clear from the video at what point the “Participant” object gets created (when do users sign up for an event?), but here is what it sounds you could do if users are already signed up for an event when they arrive on the home screen:

  • On your home screen, you could show a list of “Participants” instead of a list of “Events” (you’d show only the “logged in user’s participants” of course).
  • In each cell you would still be able to display exactly what we see on your current home screen through the “current cell participant’s event” info.
  • And now when the user clicks on a cell, we now which “Participant” they are referring to, instead of only knowing the Event.

Hope that works!

@Lucien thanks for that suggestion. So I implemented it and I think it’s on the right track but it’s not passing the Participant data through to the charity selection screens:

Any ideas what could cause that linkage to break? I’ve attempted deleting and recreating those links but no-go.

Anyways your suggestion re: converting the Events list -> Participants list was a good one and that data is at least now making it to the checklist screen. I may just need to delete the other screens completely and try recreating them from scratch. I will post if that fixes it or if you have an idea of what could cause that breakage lmk. thanks

Hey, I think you’re almost there. Probably the remaining issue is very minor at that point. It’s hard to tell if the right screens are connected to each other, but something’s weird: the arrow looks like you’re connecting the right screens, but the menu shows otherwise.

You might want to give a try at refreshing your browser. I noticed that sometimes when we copy/paste Adalo can get a bit confused (especially if there are screens with identical names, and even if you change the names afterwards). A hard refresh helps with that.

1 Like

@grid7 Looks like you’ve got it working and Current Participant is available on that screen now.

Hi Sean,

How many screens do you have linking to that? If two screens connecting to a screen don’t bring the same data, it makes data like you’re showing unavailable.

@NoCodeJedi, you are correct that the issue was apparently caused by sending the user back to the checklist screen once they complete their charity preferences.

Is there a way to explicitly carry through the Participant ID so that it doesn’t break that linkage? My sub-optimal solution right now is just to tell the user on the last screen to use the back button 4 times to get back to the checklist- that’s pretty jhankey though. thoughts?

Could you have them go to a new screen that is a “Success” type screen with a button that sends them to the list screen. So you create a break from the selection process and the list rendering?

I tried that @TonyD and unfortunately it still breaks the data linkage when I do that.

@Ben had a good suggestion to minimize the cumbersomeness of requiring the user to hit the back button four times: use visibility rules to progressively hide the previous team selection drop down and display the subsequent one. Then display a success message on the same screen and it’s only one back button press to return to the checklist. It’s a good compromise - I just haven’t implemented it yet.

1 Like

That’s a neat way around it for sure… and less screens to manage :slight_smile

Hi Lucien,

I’m actually wondering how a rank-ordered list would work. If I want to sort Objects by their numeric rank, I’m thinking I would create a rank field on the Object and then sort based on that field.

But when someone improves a rank, say from 2nd best to 1st (so the Object’s new rank is ‘Current rank-1 = 1’), how do you make the previous 1st-ranked item 2nd (Current rank+1)? How do you tell the app that you want to identify and change the ‘non-current’ item’s rank too?

Sorry if I’ve explained this appallingly badly!