class LabelSum(models.Model): content_type = models.ForeignKey(ContentType, db_index=True) object_id = models.PositiveIntegerField(db_index=True) phrase = models.ForeignKey(Phrase) count = models.PositiveIntegerField(default=0) class Meta: unique_together = (('content_type', 'object_id'),) verbose_name = _('label') verbose_name_plural = _('labels') class Label(models.Model): phrase = models.ForeignKey(Phrase) user = models.ForeignKey(User, null=True, db_index=True) ip = models.IPAddressField() post_date = models.DateTimeField(auto_now=True, editable=False) class Meta: unique_together = (('score', 'user'),) ordering = ['-post_date'] verbose_name = _('vote') verbose_name_plural = _('votes') class Phrase(models.Model): label = models.CharField(maxlength=100)