title: Django Admin - save_model method - How to detect if a field has changed?
body: <p>I'm trying to override the <a href="https://docs.djangoproject.com/en/1.2/ref/contrib/admin/#django.contrib.admin.ModelAdmin.save_model" rel="noreferrer">save_model method on a Django admin object</a> to prevent a user from changing a certain field.  However I can't find a way to find out if the field has changed within this method.</p>
  
  <p>Here's my code so far:</p>
  
  <pre><code>def save_model(self, request, obj, form, change):
      if change: 
          if obj.parking_location == form.cleaned_data['parking_location']:
              super(MyVehiclesAdmin, self).save_model(request, obj, form, change)
          else:
              messages.error(request, 
                  "The Parking Location field cannot be changed.")
  </code></pre>
  
  <p>The problem is both obj.parking_location, and form.cleaned_data['parking_location'] have the new value.  (Could this be a bug in Django?  It really seems like the obj should contain the pre-save values).  In any case, is there another way to accomplish this?</p>
  
  <p>(I'm on Django 1.2)</p>