title: Django - Choices for Models
body: <p>I have been searching and looking through docs, but I want to ask and confirm for the best solution here.</p>
  
  <p>Trying to define model choices. </p>
  
  <ol>
  <li>'yes, no and not sure' choice From Radio Select</li>
  <li>How would I define for Multiple Choices </li>
  </ol>
  
  <p>Simple Example:
  In my models.py, I have </p>
  
  <pre><code>class Property(models.Model):
      name = models.CharField()
  
  class Feature(models.Model):
      YES_CHOICES = (       # example of 1, there can be only one selection
          ('YES', 'Yes'),
          ('NO', 'No'),
          ('NOT_SURE', 'Not Sure')
      )
      PARKING_CHOICES = (    # example of 2, there can be multiple selections
          ('GARAGE', 'Garage'),
          ('STREET', 'Street'),
          ('PRIVATE_LOT', 'Private Lot'),
          ('VALET', 'Valet'),
      )
  
      nearby_school = models.CharField(max_length=8, choices=YES_CHOICES)
      parking_options = models. MultipleChoiceField(choices=PARKING_CHOICES)
  
  class PropertyFeature(models.Model)
      property = models.ForeignKey(Property)
      feature = models.ForeignKey(Feature)
      ...
  </code></pre>
  
  <p>Are those best ways to do it?</p>
  
  <ol>
  <li>Should I use NullBooleanField instead for yes, no , not sure question?</li>
  <li>Is that a correct way for defining and storing for multiple choice answers? Sometimes, I see people using manytomany objects. </li>
  </ol>
  
  <p>Just want to use the most efficient and the easiest method offered from Django.</p>