'django - create a model that lets you insert multiple values for the same field?

Ok I'm trying to do something which should be very simple in my mind but I am probably missing some SQL or django admin knowledge to get to it. Say I have a simple model such as

class Book(models.Model):
    title = models.CharField(max_length = 50)
    review = models.TextField()

and I want the 'review' field in the admin site to have a little plus sign to add more reviews to the same model instance for the template to iterate through them.

I know I could create a m2m field for the reviews and it would give me just that, but I would rather like that those extra reviews could be filled from the same page without popups (for my helpless users i would like to keep it as WSIWYG as possible, since those textfields will be tinyMCE powered), and I wonder if it's really necessary to create an extra model just for a textfield



Solution 1:[1]

Another option since Django 3.1. could be creating a JSON field and storing multiple values in a key value pair. Although it may not be suitable for all cases but for some that came to this topic it could work. Reference to Django docs https://docs.djangoproject.com/en/3.2/ref/models/fields/#jsonfield

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 d1spstack