I got stuck at lecture " Building a Data Model" in part 1 django

Dear friends, I am facing numerous difficulties in the lecture 'building data models from Mosh, and I truly hope to receive assistance from everyone.
n part 1, building the data model, why do we have many-to-many relationships without normalizing them to bring them to one-to-many?
Issue 2, if there is a many-to-many relationship, the question is, how do we add new data,
For example, the Product and Promotion tables have a many-to-many relationship, how can we add new data when they reference each other?
Issue 3 in the video “Resolving Circular Relationships in part 1 at 3:20,” He said,
“django cannot the reverse relationship because the name of clash.” I truly don’t understand because the Collection class has attributes {title, feactued_product}, meaning it uses the primary key of Product as a foreign key for Collection. So why does Django have to create automatically a collection attribute in the Product class?
In this section, He always mention “Django the reverse relationship the name,” but he haven’t explained why the reverse order needs to be created.
thank you very much!