title: How do I make many-to-many field optional in Django?
body: <p>When you have a many-to-many relationship (<code>related_name</code>, not <code>through</code>) and you are trying to use the admin interface you are required to enter one of the relationships even though it does not have to exist for you to create the first entry.</p>
  
  <p>I'm creating an app that is an event organizer. Imagine we had <code>Event</code> and <code>Group</code> models, bound with many-to-many relationship.</p>
  
  <p>Django <a href="https://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models.ForeignKey.related_name" rel="noreferrer"><code>related_name</code></a> creates another table with the indices of the two other tables.<br>
  <strong>But I see no reason why this extra table <em>has</em> to be populated.</strong></p>
  
  <p>If I work with the database through phpMyAdmin I can create a <code>Group</code> without registering an <code>Event</code>, since the connection between the two is only through a separate table, and there is no database value enforcement at given level.</p>
  
  <p>How do I make the admin interface this realize it?<br>
  <strong>How do I make the many-to-many field optional in Django?</strong></p>