title: Django add extra field to a ModelForm generated from a Model
body: <p>I have to generate a FormSet from a model but I need to insert an "extra value" in to every form.</p>
  
  <p>Specifically, I have a JApplet that generates some Markers and Paths on a image, and POST it on the server.</p>
  
  <p>In my model lines are composed from two Markers. But when I POST it, because I'm using the id generated from the JApplet and not from the database, I will not know from which Markers a Path will be composed.</p>
  
  <p>So I thought to insert a "temporary id" on the Marker on the form, and do the correct arrangements in the view before saving the Path.</p>
  
  <p>I thought about defining a custom form for the markers, but it not seems to be very DRY, and I don't want to came back to this if I change the Marker model.</p>
  
  <p>Here is the form:</p>
  
  <pre><code>  class PointForm(forms.ModelForm):
      temp_id = forms.IntegerField()
      class Meta:
              model = Point
  
      def clean(self):
              if any(self.errors):
                      # Don't bother validating the formset unless each form is valid on its own
                      return
  
              ingresso = self.cleaned_data['ingresso']
              ascensore = self.cleaned_data['ascensore']
              scala = self.cleaned_data['scala']
  
              if (ingresso and ascensore) or (ingresso and scala) or (ascensore and scala):
                      raise forms.ValidationError("A stair cannot be a elevator or an access!!!") 
              return self
  
      def save(commit=True):
      # do something with self.cleaned_data['temp_id']
              super(PointForm).save(commit=commit)
  </code></pre>
  
  <p>And the model:</p>
  
  <pre><code>  class Point(models.Model):
  
      RFID = models.CharField(max_length=200, blank=True)
  
      x = models.IntegerField()
      y = models.IntegerField()
  
      piano = models.ForeignKey(Floor)
  
      ingresso = models.BooleanField()
  </code></pre>
  
  <p>The error:</p>
  
  <pre><code>  ViewDoesNotExist at /admin/
    Could not import buildings.views.getFloors. View does not exist in module buildings.views.
    Request Method:   GET
    Request URL:  http://127.0.0.1:8000/admin/
    Django Version:   1.4.1
    Exception Type:   ViewDoesNotExist
    Exception Value:  
    Could not import buildings.views.getFloors. View does not exist in module buildings.views.
    Exception Location:   /usr/local/lib/python2.7/dist-packages/django/core/urlresolvers.py in get_callable, line 101
  </code></pre>
  
  <p>The error is generated when I try to load the admin page, this page has no references at all with the form. </p>
  
  <p><strong>SOLUTION FOR EXCEPTION</strong></p>
  
  <p>Ok, I'll write here how to find out why Django was doing such a strange thing.</p>
  
  <p><a href="https://stackoverflow.com/questions/11393257/viewdoesnotexist-error">Here</a> it's a correct way to find out what is the problem. </p>
  
  <p>The exception was thrown because I forgot to add <code>forms.py</code> to the <code>from django import forms</code>.</p>