Forum Academy Marketplace Showcase Pricing Features

Tricky complex data manipulations

Hi all,

I have a question which is a bit tricky (at least for me). I am building a vocabulary training application and I have been making good progress. Users can now choose their learning languages, enter new words and meanings, update them, group them to lists and start training. The next step I want to implent is a more advanced system of learning.

  • That means a user has his vocabulary which he has added so far (from my database or newly created).
  • Now I want that the each user has like eight lists of words and each list represents a certain status of knowledge (e.g. Short Term Memory Level 3).
  • So the moment a word is trained it has to be moved from a list (E.g. Short Term Memory Level 3 to Level 4 or to Level 2).
  • The problem is that the lists the user generates for training (e.g. a certain unit of her textbook) are not identical with the knowledge level lists. So every time a word is trained, my code would have to search for the word in all the lists and in dependency of the list and the answer would have to remove it there and add it to another list.

Do you see a solution how this could be done in Bubble?

Thank you all, best,

No ideas? :cry:

Could you give an example ?

Sure, Nigel.

  • User has a list personal vocabulary which has words on it.
  • Before starting the vocabulary training, the user can then add these words to a list which keeps the vocabulary he will be training
  • the words on this training list will then be shown to him randomly and he knows them or he does not
  • The user should then keep track of the progress of his learning, so every word should be moved to one of several lists (every user has these lists) that each represent the “knowledge level” of the word (e.g. Level 2, Level 3, etc.) after it was tested, dependent on whether the user got it right or wrong (moving up or down the Levels)
  • the problem is that my code would have to find out the level of the word (on which list is it at the moment) and then move it to the other list (level up or down) and I have no real idea how to build this.

Is this understandable?


How is the word held for each user ?

It is in a list “general vocabulary”.

And that list is on the user ?

Yes, the list is in a “thing” (the learning language) that is on the user.

Can you record the level on this as well ?

I thought about that but it would be a great load for the database as every user would have the whole vocabulary saved and individually updated. With the list solution I only have to add the words to the “level-list”.

Thanks again for your time!

Yes, but instead of that you can just save the object on the user not the word.

So there is only one in instance of the word, but you embed it in the user and add in level. That way the word only occurs once.

OK, sounds good, but do you have an idea what that would look like (i.e. how can I add in level - to what thing would I save that?).


Ok, so you have a list of Words …

And you have a thing that holds a Word Thing, and the Level.

i.e. a Word can have many Wordlearings.

And then you can add that to the User.

So when the Word levels up, you update that Wordlearning’s level.


Nigel, thank you so much! This means making some changes, but should do the job in the end.