Add ModelWithFieldAttributes *before* PolyModel, so that everything does not
become a "ModelWithFieldAttributes" in the Datastore.
The way PolyModel works, each Model class hierarchy is stored in the Datastore
as the class that directly inherited from PolyModel. So, we do not want to
insert ModelWithFieldAttributes *after* PolyModel by inheriting *from*
PolyModel, or everything would just be a ModelWithFieldAttributes in the
Datastore, instead of Person, Work, Group, etc.
import tempfile
from django.db import models
class Photo(models.Model):
title = models.CharField(maxlength=30)
image = models.FileField(upload_to=tempfile.gettempdir())
# Support code for the tests; this keeps track of how many times save() gets
# called on each instance.
def __init__(self, *args, **kwargs):
super(Photo, self).__init__(*args, **kwargs)
self._savecount = 0
def save(self):
super(Photo, self).save()
self._savecount +=1