Build it with Tim - How do I build a multiple choice test? (Ep. 23)

In the latest episode of Build it with Tim, we dive into a complex application that allows user to login, select a test, register for that test, and then go through the process of actually taking that test. A user provides their answers, and based on a pre-defined correct answer, the user’s answer is graded and calculated towards their final score.

The data structure is not overly complicated for this application but it’s designed for use with the Tadabase Record Utilities pipe. While built specific for that pipe, the application follows a pretty common pattern and architecture. We’ll use the following tables:

  • Tests
  • Questions
  • Answers
  • Test Registrations
  • Test Questions

Administrators of the application create test records, and then create connected questions. For each question, multiple answer records are created that connect to the question, as well as, the relevant test.

The final 2 tables are similar in design with one major difference - these tables have an additional connection to the Users Table. In order to provide unique test instances for each user, we must create separate test registrations and test questions for each user that registers.

In order to do this, we’ll use the Tadabase Record Utilities Pipe - specifically the Import Child Records function. By defining “template” records, ie. - existing registrations and test questions that connect to the template test registration - we can use the Pipe to find and duplicate this data and assign the new records to the user who selected the test.

I think in this case, reading about it is probably as difficult to understand as it is to explain it - and that’s why I made this video!

Check out this weeks episode below :point_down:

1 Like

Hi @tim.young @Chem ,

Thank you very much for this sir. I tried to build this and it works fine.
However, I notice that creating questions under the test is a struggle. Or I just don’t know how to do it properly. Sorry about that. I am totally new. I hope you can help me on that part.

Another concern is that:
In using Tadabase Record Utilities the “Import Child Record” calls. You must select a test that you want to create a copy. I believe that this is the participant level where I am the one who will be taking the test and I get to choose the test that I want to take. right?

I hope you can help me where I am in the part of being the admin level who can create the test, able to send the invitation to someone I want to participate in the test I created. And able to send it to many. Is this possible?

Hoping you can help me on this. Thank you.