1234567891011121314151617181920212223242526272829303132 |
- import difflib
- from django.conf import settings
- from django.db import models
- from django.utils import timezone
- class PostEdit(models.Model):
- category = models.ForeignKey('misago_categories.Category')
- thread = models.ForeignKey('misago_threads.Thread')
- post = models.ForeignKey('misago_threads.Post', related_name='edits_record')
- edited_on = models.DateTimeField(default=timezone.now)
- editor = models.ForeignKey(
- settings.AUTH_USER_MODEL,
- blank=True,
- null=True,
- on_delete=models.SET_NULL,
- )
- editor_name = models.CharField(max_length=255)
- editor_slug = models.CharField(max_length=255)
- editor_ip = models.GenericIPAddressField()
- edited_from = models.TextField()
- edited_to = models.TextField()
- class Meta:
- ordering = ['-id']
- def get_diff(self):
- return difflib.ndiff(self.edited_from.splitlines(), self.edited_to.splitlines()),
|