kopia lustrzana https://github.com/wagtail/wagtail
do not delete uploaded images or page revisions when a user is deleted. fixes #1918
rodzic
f436bc5c09
commit
aaed92f301
|
@ -24,6 +24,7 @@ Changelog
|
|||
* Added an optional human-friendly `site_name` field to sites (Timo Rieber)
|
||||
* Added success message after updating image from the image upload view (Christian Peters)
|
||||
* New translations for Arabic and Latvian
|
||||
* Fix: Images and page revisions created by a user are no longer deleted when the user is deleted (Rich Atkinson)
|
||||
* Fix: HTTP cache purge now works again on Python 2 (Mitchel Cabuloy)
|
||||
* Fix: Locked pages can no longer be unpublished (Alex Bridge)
|
||||
* Fix: Site records now implement `get_by_natural_key`
|
||||
|
|
|
@ -90,6 +90,7 @@ Contributors
|
|||
* Christian Peters
|
||||
* Adon Metcalfe
|
||||
* rayrayndwiga
|
||||
* Rich Atkinson
|
||||
|
||||
|
||||
Translators
|
||||
|
|
|
@ -74,6 +74,7 @@ Minor features
|
|||
Bug fixes
|
||||
~~~~~~~~~
|
||||
|
||||
* Images and page revisions created by a user are no longer deleted when the user is deleted (Rich Atkinson)
|
||||
* HTTP cache purge now works again on Python 2 (Mitchel Cabuloy)
|
||||
* Locked pages can no longer be unpublished (Alex Bridge)
|
||||
* Site records now implement ``get_by_natural_key``
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import models, migrations
|
||||
import django.db.models.deletion
|
||||
from django.conf import settings
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('tests', '0021_custommanagerpage'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='customimage',
|
||||
name='uploaded_by_user',
|
||||
field=models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.SET_NULL, blank=True, editable=False,
|
||||
to=settings.AUTH_USER_MODEL, null=True, verbose_name='uploaded by user'
|
||||
),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='customimagefilepath',
|
||||
name='uploaded_by_user',
|
||||
field=models.ForeignKey(
|
||||
editable=False, to=settings.AUTH_USER_MODEL, null=True, blank=True,
|
||||
on_delete=django.db.models.deletion.SET_NULL, verbose_name='uploaded by user'
|
||||
),
|
||||
),
|
||||
]
|
|
@ -0,0 +1,24 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import models, migrations
|
||||
import django.db.models.deletion
|
||||
from django.conf import settings
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('wagtailcore', '0022_add_site_name'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='pagerevision',
|
||||
name='user',
|
||||
field=models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.SET_NULL,
|
||||
verbose_name='user', blank=True, to=settings.AUTH_USER_MODEL, null=True
|
||||
),
|
||||
),
|
||||
]
|
|
@ -1338,7 +1338,10 @@ class PageRevision(models.Model):
|
|||
db_index=True
|
||||
)
|
||||
created_at = models.DateTimeField(verbose_name=_('created at'))
|
||||
user = models.ForeignKey(settings.AUTH_USER_MODEL, verbose_name=_('user'), null=True, blank=True)
|
||||
user = models.ForeignKey(
|
||||
settings.AUTH_USER_MODEL, verbose_name=_('user'), null=True, blank=True,
|
||||
on_delete=models.SET_NULL
|
||||
)
|
||||
content_json = models.TextField(verbose_name=_('content JSON'))
|
||||
approved_go_live_at = models.DateTimeField(verbose_name=_('approved go live at'), null=True, blank=True)
|
||||
|
||||
|
|
|
@ -0,0 +1,24 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import models, migrations
|
||||
import django.db.models.deletion
|
||||
from django.conf import settings
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('wagtailimages', '0009_capitalizeverbose'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='image',
|
||||
name='uploaded_by_user',
|
||||
field=models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.SET_NULL, blank=True, editable=False,
|
||||
to=settings.AUTH_USER_MODEL, null=True, verbose_name='uploaded by user'
|
||||
),
|
||||
),
|
||||
]
|
|
@ -62,7 +62,8 @@ class AbstractImage(models.Model, TagSearchable):
|
|||
height = models.IntegerField(verbose_name=_('height'), editable=False)
|
||||
created_at = models.DateTimeField(verbose_name=_('created at'), auto_now_add=True, db_index=True)
|
||||
uploaded_by_user = models.ForeignKey(
|
||||
settings.AUTH_USER_MODEL, verbose_name=_('uploaded by user'), null=True, blank=True, editable=False
|
||||
settings.AUTH_USER_MODEL, verbose_name=_('uploaded by user'),
|
||||
null=True, blank=True, editable=False, on_delete=models.SET_NULL
|
||||
)
|
||||
|
||||
tags = TaggableManager(help_text=None, blank=True, verbose_name=_('tags'))
|
||||
|
|
Ładowanie…
Reference in New Issue