Normalization helps you efficiently store data. Once your models are fully normalized, they will not have redundant data, and each model should contain data that is only logically related to it.
To give a quick example, if we were to normalize the post table so that we can unambiguously refer to the superhero who posted that message, then we need to isolate the user details in a separate table. Django already creates the user table by default. So, you only need to refer to the ID of the user who posted the message in the first column, as shown in the following table:
User ID |
Message |
Posted on |
12 |
Has this posted yet? |
2012/07/07 07:15 |
8 |
It should be Is not Has. |
2012/07/07 07:17 |
12 |