The way you described has the added advantage of effectively keeping a version history. However, if no one is ever going to use this history it's just a waste of space. There are two other options I can think of, one probably better than the other: 1. Django's cache framework (http://www.djangoproject.com/documentation/cache/) should help avoid some of the overhead of the DB calls. 2. Triggers - MySQL and Oracle (and probably others) support triggers which fire a certain event occurs. You could setup a trigger that fires when a new row is inserted into your about table that deletes all rows but the new one. In my experience, triggers are a pain to deal with, but it's an option.
ocgstyles wrote: > The client wants certain parts of the site to be editable, I don't > particularly agree with the logic, simply because why take a DB hit > (although small) just to grab text from a database for an "About" page > when that text us USUALLY static. > > So thinking of this "About" page, maybe the client just tells a little > about the business etc, but maybe wants to update it occasionally. I > implemented it as a "About" class in a "Section" module. But with > that model, you can add multiple "About" texts. One way I thought of > doing it was to grab the latest edited object like this: > > class About(models.Model): > text = models.TextField() > pub_date = models.DateTimeField(auto_now=True) > > Then just use: > > About.objects.order_by('-pub_date') > > to retrieve the latest edited version. So having many versions isn't > a problem... > > Just wondered if there was a better way to handle this. > > > On Jun 14, 2:41 pm, bruno desthuilliers > <[EMAIL PROTECTED]> wrote: > >> On 14 juin, 15:53, ocgstyles <[EMAIL PROTECTED]> wrote: >> >> >>> Is there a way create a restriction that will only allow one instance >>> of a model? >>> >> The closest you could get would be to define a model with a unique not >> editable field and override the save method to make this field a >> constant value. But that wont work for direct database access. >> >> Anyway, why would you want such a thing ? >> > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---