Skip to content
Snippets Groups Projects
Commit 60eb9b55 authored by Jonathan Weth's avatar Jonathan Weth :keyboard:
Browse files

Merge branch '19-create-migration-for-managed-by-app-label' into 'master'

Resolve "Create migration for Managed By App Label"

Closes #19

See merge request !64
parents 501a1e5e 408cb100
No related branches found
Tags 4.0.0.dev0
1 merge request!64Resolve "Create migration for Managed By App Label"
Pipeline #163959 passed with warnings
......@@ -2,7 +2,6 @@
import aleksis.apps.resint.models
import calendarweek.calendarweek
import django.contrib.sites.managers
import django.core.validators
from django.db import migrations, models
import django.db.models.deletion
......@@ -13,7 +12,6 @@ class Migration(migrations.Migration):
initial = True
dependencies = [
('sites', '0002_alter_domain_unique'),
]
operations = [
......@@ -29,14 +27,12 @@ class Migration(migrations.Migration):
('default_pdf', models.FileField(help_text='This PDF file will be shown if there is no current PDF.', upload_to='default_posters/', validators=[django.core.validators.FileExtensionValidator(allowed_extensions=['pdf'])], verbose_name='Default PDF')),
('show_in_menu', models.BooleanField(default=True, verbose_name='Show in menu')),
('public', models.BooleanField(default=False, verbose_name='Show for not logged-in users')),
('site', models.ForeignKey(default=1, editable=False, on_delete=django.db.models.deletion.CASCADE, to='sites.site')),
],
options={
'verbose_name': 'Poster group',
'verbose_name_plural': 'Poster groups',
},
managers=[
('objects', django.contrib.sites.managers.CurrentSiteManager()),
],
),
migrations.CreateModel(
......@@ -48,26 +44,24 @@ class Migration(migrations.Migration):
('year', models.PositiveSmallIntegerField(default=aleksis.apps.resint.models._get_current_year, verbose_name='Year')),
('pdf', models.FileField(upload_to='posters/', validators=[django.core.validators.FileExtensionValidator(allowed_extensions=['pdf'])], verbose_name='PDF')),
('group', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='posters', to='resint.postergroup', verbose_name='Poster group')),
('site', models.ForeignKey(default=1, editable=False, on_delete=django.db.models.deletion.CASCADE, to='sites.site')),
],
options={
'verbose_name': 'Poster',
'verbose_name_plural': 'Posters',
},
managers=[
('objects', django.contrib.sites.managers.CurrentSiteManager()),
],
),
migrations.AddConstraint(
model_name='postergroup',
constraint=models.UniqueConstraint(fields=('site_id', 'name'), name='unique_site_name'),
constraint=models.UniqueConstraint(fields=('name'), name='unique_site_name'),
),
migrations.AddConstraint(
model_name='postergroup',
constraint=models.UniqueConstraint(fields=('site_id', 'slug'), name='unique_site_slug'),
constraint=models.UniqueConstraint(fields=('slug'), name='unique_site_slug'),
),
migrations.AddConstraint(
model_name='poster',
constraint=models.UniqueConstraint(fields=('site_id', 'week', 'year'), name='unique_site_week_year'),
constraint=models.UniqueConstraint(fields=('week', 'year'), name='unique_site_week_year'),
),
]
......@@ -16,6 +16,6 @@ class Migration(migrations.Migration):
),
migrations.AddConstraint(
model_name='poster',
constraint=models.UniqueConstraint(fields=('site_id', 'week', 'year', 'group'), name='unique_site_week_year'),
constraint=models.UniqueConstraint(fields=('week', 'year', 'group'), name='unique_site_week_year'),
),
]
......@@ -8,7 +8,6 @@ import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('sites', '0002_alter_domain_unique'),
('contenttypes', '0002_remove_content_type_name'),
('resint', '0005_fix_permissions'),
]
......@@ -24,14 +23,13 @@ class Migration(migrations.Migration):
('current_file', models.FileField(blank=True, editable=False, null=True, upload_to='live_documents/', verbose_name='Current file')),
('last_update_triggered_manually', models.BooleanField(default=False, editable=False, verbose_name='Was the last update triggered manually?')),
('polymorphic_ctype', models.ForeignKey(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='polymorphic_resint.livedocument_set+', to='contenttypes.contenttype')),
('site', models.ForeignKey(default=1, editable=False, on_delete=django.db.models.deletion.CASCADE, to='sites.site')),
],
options={
'verbose_name': 'Live document',
'verbose_name_plural': 'Live documents',
},
managers=[
('objects', aleksis.core.managers.PolymorphicCurrentSiteManager()),
('objects', aleksis.core.managers.PolymorphicBaseManager()),
],
),
]
# Generated by Django 4.1.9 on 2023-07-03 20:16
import aleksis.core.managers
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
("contenttypes", "0002_remove_content_type_name"),
("resint", "0008_public_live_documents"),
]
operations = [
migrations.AlterModelManagers(
name="poster",
managers=[
("objects", aleksis.core.managers.AlekSISBaseManager()),
],
),
migrations.AlterModelManagers(
name="postergroup",
managers=[
("objects", aleksis.core.managers.AlekSISBaseManager()),
],
),
migrations.AddField(
model_name="livedocument",
name="managed_by_app_label",
field=models.CharField(
blank=True,
editable=False,
max_length=255,
verbose_name="App label of app responsible for managing this instance",
),
),
migrations.AddField(
model_name="poster",
name="managed_by_app_label",
field=models.CharField(
blank=True,
editable=False,
max_length=255,
verbose_name="App label of app responsible for managing this instance",
),
),
migrations.AddField(
model_name="postergroup",
name="managed_by_app_label",
field=models.CharField(
blank=True,
editable=False,
max_length=255,
verbose_name="App label of app responsible for managing this instance",
),
),
migrations.AlterField(
model_name="livedocument",
name="polymorphic_ctype",
field=models.ForeignKey(
editable=False,
null=True,
on_delete=django.db.models.deletion.CASCADE,
related_name="polymorphic_%(app_label)s.%(class)s_set+",
to="contenttypes.contenttype",
),
),
]
# Generated by Django 4.2.9 on 2024-01-03 13:48
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('resint', '0009_managed_by_app_label'),
]
operations = [
migrations.AlterModelManagers(
name='livedocument',
managers=[
],
),
migrations.AlterModelManagers(
name='poster',
managers=[
],
),
migrations.AlterModelManagers(
name='postergroup',
managers=[
],
),
migrations.RemoveConstraint(
model_name='poster',
name='unique_site_week_year',
),
migrations.RemoveConstraint(
model_name='postergroup',
name='unique_site_name',
),
migrations.RemoveConstraint(
model_name='postergroup',
name='unique_site_slug',
),
] + [
migrations.RunSQL(
f"ALTER TABLE resint_{model_name} drop column if exists site_id;"
) for model_name in
[
"postergroup",
"poster",
"livedocument",
]
] + [
migrations.AlterField(
model_name='postergroup',
name='name',
field=models.CharField(max_length=255, unique=True, verbose_name='Name'),
),
migrations.AlterField(
model_name='postergroup',
name='publishing_day',
field=models.PositiveSmallIntegerField(choices=[(0, 'Monday'), (1, 'Tuesday'), (2, 'Wednesday'), (3, 'Thursday'), (4, 'Friday'), (5, 'Saturday'), (6, 'Sunday')], verbose_name='Publishing weekday'),
),
migrations.AlterField(
model_name='postergroup',
name='slug',
field=models.SlugField(help_text="If you use 'example', the filename will be 'example.pdf'.", unique=True, verbose_name='Slug used in URL name'),
),
migrations.AddConstraint(
model_name='poster',
constraint=models.UniqueConstraint(fields=('week', 'year', 'group'), name='unique_week_year_group'),
),
]
......@@ -59,8 +59,9 @@ class PosterGroup(ExtensibleModel):
slug = models.SlugField(
verbose_name=_("Slug used in URL name"),
help_text=_("If you use 'example', the filename will be 'example.pdf'."),
unique=True,
)
name = models.CharField(max_length=255, verbose_name=_("Name"))
name = models.CharField(max_length=255, verbose_name=_("Name"), unique=True)
publishing_day = models.PositiveSmallIntegerField(
verbose_name=_("Publishing weekday"), choices=i18n_day_name_choices_lazy()
)
......@@ -78,10 +79,6 @@ class PosterGroup(ExtensibleModel):
class Meta:
verbose_name = _("Poster group")
verbose_name_plural = _("Poster groups")
constraints = [
models.UniqueConstraint(fields=["site_id", "name"], name="unique_site_name"),
models.UniqueConstraint(fields=["site_id", "slug"], name="unique_site_slug"),
]
permissions = [
("view_poster_of_group", _("Can view all posters of this group")),
("upload_poster_to_group", _("Can upload new posters to this group")),
......@@ -159,9 +156,7 @@ class Poster(ExtensibleModel):
class Meta:
constraints = [
models.UniqueConstraint(
fields=["site_id", "week", "year", "group"], name="unique_site_week_year"
)
models.UniqueConstraint(fields=["week", "year", "group"], name="unique_week_year_group")
]
verbose_name = _("Poster")
verbose_name_plural = _("Posters")
......
[tool.poetry]
name = "AlekSIS-App-Resint"
version = "3.1.1.dev0"
version = "4.0.0.dev0"
packages = [
{ include = "aleksis" }
]
......@@ -39,9 +39,10 @@ priority = "primary"
name = "gitlab"
url = "https://edugit.org/api/v4/projects/461/packages/pypi/simple"
priority = "supplemental"
[tool.poetry.dependencies]
python = "^3.10"
AlekSIS-Core = "^3.0"
AlekSIS-Core = "^4.0.0.dev1"
[tool.poetry.plugins."aleksis.app"]
resint = "aleksis.apps.resint.apps:ResintConfig"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment