Saving multiple user inputs in a list corresponding to the item in a list of items

Hi Everyone!


I will be really grateful if someone can help me with this, I am stuck with it for a few days now and finally posting it here. I am new to bubble, picked it 2 weeks back and building my first app.

I am trying to create a custom quiz feature where user selects the questions out of available question bank and create the quiz. After that, user can take the quiz and chooses one answer out of available answer options and submits the quiz to see his/her performance.

My execution:

I made a custom state -selected questions- to save the list of questions and save that list to a user data field called -list of questions. When user gets to the next page to attempt the questions which are visible in a repeating group with 4-5 options for each questions. It selects one answer for each question and that value again gets saved in a custom field.

Problem: - I want to save this list of answers where each answer is linked to its question and show analytics based on correct and incorrect questions. But the data base I set up has gotten too complex and I am avoiding to make any major changes.

Problem 2: I also want to show the question selected from last page’s repeating group one by one and move to next question as user click next button rather than all at once as is the case now.


Hi there, @shubhamdwivedi105… I will try to help here instead of the direct message you sent, but any help I might be able to provide probably starts with a question… how willing or unwilling are you to change your data types? Without screenshots, it’s hard to know exactly how you have the data types set up, but I am guessing it is not in a manner that is ideal for what you are trying to build.

If you want to leave your data types as-is, then it would probably be good to share screenshots of them so that anyone who tries to help can do so within the context of you not wanting to make major changes to them. I’m guessing you need to be open to rethinking them from the ground up, though, but again, it’s hard to say without knowing how they are set up now and exactly how you are trying to use them.


Hi Mike, I have no problem changing the Data Types or anything else required to achieve the end goal. Sure, I can sharing screen shorts. I agree that I might not have set it up in a right way. If you can tell me how you would have built this, I would like to follow that because whatever I have done here is based on the limited understanding I have right now. Thanks!

Well, first, I definitely wouldn’t store a list of questions on the User data type, and I don’t understand the mock data types at all. If a user is making a quiz by selecting questions from a question bank, I would almost certainly have a Quiz data type that stores a list of questions associated with the quiz.

You have a lot going on there, and honestly, I pretty much always steer clear of threads where someone needs help at the “I don’t really know where to start with my data types” level because that’s more than I want to get into in the forum. I know there are other folks who like to jump in and help at that level, though, so maybe one of them will provide some thoughts here.

Oh, and it couldn’t hurt to check out stuff like this blog post and this forum post, and I’m sure there are other resources out there if you do some searching.

1 Like

Mock is a synonym of Quiz. I think I am not struggling to make data types to be honest.

The entire question at it’s core is - How can I save list of questions from a page and then save list of answer for each question efficiently. Since radio buttons value change can create a new thing in the database I wanted to store it once user finishes answering all the question by storing it in a custom state and then saving it to the quiz/mock data type in list of answers data field. And this whole process made the operation a little complex just for now. Sure, I will have a look at the shared resources.

Regarding the user data filed- list of questions. I was experimenting with a solution suggested by @romanmg for a similar problem.