From 992a2ec8e0667efd2e7a10f6bd8105f7beb4e3f8 Mon Sep 17 00:00:00 2001 From: Aarni Halinen Date: Tue, 26 Jul 2022 20:14:33 +0300 Subject: [PATCH] Add new BaseRole --- kaehmy/migrations/0008_baserole.py | 22 +++++++++++++++++++ kaehmy/models.py | 35 ++++++++++++++++++++++++++++-- 2 files changed, 55 insertions(+), 2 deletions(-) create mode 100644 kaehmy/migrations/0008_baserole.py diff --git a/kaehmy/migrations/0008_baserole.py b/kaehmy/migrations/0008_baserole.py new file mode 100644 index 0000000..f8ee18a --- /dev/null +++ b/kaehmy/migrations/0008_baserole.py @@ -0,0 +1,22 @@ +# Generated by Django 3.2.14 on 2022-08-03 20:14 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('kaehmy', '0007_alter_commentparent_id'), + ] + + operations = [ + migrations.CreateModel( + name='BaseRole', + fields=[ + ('id', models.AutoField(primary_key=True, serialize=False)), + ('name', models.CharField(max_length=255, verbose_name='Name')), + ('is_board', models.BooleanField(verbose_name='Board member')), + ('category', models.CharField(choices=[('corporate', 'Corporate affairs'), ('freshman', 'Freshmen'), ('international', 'International'), ('external', 'External affairs'), ('media', 'Media'), ('tech', 'Technology'), ('wellbeing', 'Wellbeing'), ('elepaja', 'Elepaja'), ('ceremonies', 'Ceremonies'), ('studies', 'Studies'), ('sosso', 'Sössö magazine'), ('alumni', 'Alumni relations'), ('others', 'Others')], default='others', max_length=255, verbose_name='Category')), + ], + ), + ] diff --git a/kaehmy/models.py b/kaehmy/models.py index a3a033a..ba22f71 100644 --- a/kaehmy/models.py +++ b/kaehmy/models.py @@ -1,7 +1,7 @@ from django.db import models from django.utils import timezone from django.utils.translation import ugettext_lazy as _ -from webapp.models import BaseRole +from webapp.models import BaseRole as OldBaseRole # TODO: Move BaseRole to Kaehmt App; will fuck up the DB since table is removed, if no data migration is done before-hand. @@ -13,7 +13,38 @@ from webapp.models import BaseRole VERBOSE_NAME = _("Kaehmy") -class KaehmyBaseRole(BaseRole): +class BaseRole(models.Model): + """Base model for occupations/roles.""" + + id = models.AutoField(primary_key=True) + name = models.CharField(_("Name"), max_length=255) + is_board = models.BooleanField(_("Board member")) + + CATEGORIES = ( + ("corporate", _("Corporate affairs")), + ("freshman", _("Freshmen")), + ("international", _("International")), + ("external", _("External affairs")), + ("media", _("Media")), + ("tech", _("Technology")), + ("wellbeing", _("Wellbeing")), + ("elepaja", _("Elepaja")), + ("ceremonies", _("Ceremonies")), + ("studies", _("Studies")), + ("sosso", _("Sössö magazine")), + ("alumni", _("Alumni relations")), + ("others", _("Others")), + ) + category = models.CharField( + _("Category"), choices=CATEGORIES, default="others", max_length=255 + ) + + def __str__(self): + n = self.name.capitalize() + return "{} ({})".format(n, _("board member")) if self.is_board else n + + +class KaehmyBaseRole(OldBaseRole): """ABC""" CATEGORIES = (