title: Django admin with many to many choices
body: <p>I have the following <code>models.py</code> and <code>admin.py</code> files. The intention is to allow for selection of multiple categories for a given product if necessary. </p>
  
  <p><strong>models.py</strong></p>
  
  <pre><code>class Product(models.Model):
      organization = models.ForeignKey(Organization)
      name = models.CharField(max_length=50)
      brief = models.CharField(max_length=100)
      descrip = models.TextField(max_length=1300)
      categories = models.ManyToManyField('Product_Category')
  
  class Product_Category(models.Model):
      cats = {"AUT":"Automation", "PWA":"Personal Wealth Advisory", 
              "BCH":"Blockchain", "LOS":"Loan Origination", "FX":"Foreign Exchange"}
      choices = tuple((human, c) for human, c in cats.items())
      name = models.CharField(max_length=32, choices=choices)
  </code></pre>
  
  <p><strong>admin.py</strong></p>
  
  <pre><code> from .models import Product, Product_Feature, Organization, Product_Category
  
  class PFeatureInLine(admin.StackedInline):
      model = Product_Feature
      extra = 1
  
  class ProductForm(forms.ModelForm):
      logo_file = forms.ImageField()
  
      def save(self, commit=True):
          logo_file = self.cleaned_data.get("logo_file", None)
          self.instance.logo = b64encode(logo_file.read()).decode("utf-8")
          return forms.BaseModelForm.save(self, commit=commit)
  
      class Meta():
          exclude = ["logo"]
          model = Product
  
  class ProductAdmin(admin.ModelAdmin):
      form = ProductForm
      inlines = [PFeatureInLine,]
  
  admin.site.register(Product, ProductAdmin)
  admin.site.register(Organization)
  </code></pre>
  
  <p>This results in the following, when accessing a <code>Products</code> object through admin:</p>
  
  <p><a href="https://i.stack.imgur.com/fxR3d.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/fxR3d.png" alt="enter image description here"></a></p>