diff --git a/unisportomat/course_scraper/course_scraper.py b/unisportomat/course_scraper/course_scraper.py index e0671bea476f4c54ef3e6776692ae1bb0b85d8cb..4c4a7103633a2b69de4ccd6f760bbe57c843e6f3 100644 --- a/unisportomat/course_scraper/course_scraper.py +++ b/unisportomat/course_scraper/course_scraper.py @@ -6,6 +6,7 @@ for http://www.buchsys.de for SWP UniSport-O-Mat. import requests from bs4 import BeautifulSoup + def fetch_website(url): """ Helper function to fetch the content of a website. diff --git a/unisportomat/course_scraper/test_course_scraper.py b/unisportomat/course_scraper/test_course_scraper.py index 4bac400bef4d091c7455c7cdd91c125c46fd0340..62909ec52d70d6e7cee664b28aaf2eedd181253f 100644 --- a/unisportomat/course_scraper/test_course_scraper.py +++ b/unisportomat/course_scraper/test_course_scraper.py @@ -2,7 +2,7 @@ Testing module, yo. Just for the course_scraper.py. """ from django.test import TestCase -from course_scraper import scraping #, fetch_website +from course_scraper import scraping # , fetch_website class ScraperTestCase(TestCase): @@ -10,6 +10,7 @@ class ScraperTestCase(TestCase): Just a few tests, so pylint isn't getting a fit. Because reasons. """ + def test_returns_dict(self): """ Testing return type of scraping(). diff --git a/unisportomat/manage.py b/unisportomat/manage.py index 9c9d2773474f241fb56e880d8e947b19c2e04912..83f2086dfb7f49a5e9389fa89ca828eba9ffa8c4 100755 --- a/unisportomat/manage.py +++ b/unisportomat/manage.py @@ -6,7 +6,7 @@ import sys def main(): """Run administrative tasks.""" - os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'unisportomat.settings') + os.environ.setdefault("DJANGO_SETTINGS_MODULE", "unisportomat.settings") try: from django.core.management import execute_from_command_line except ImportError as exc: @@ -18,5 +18,5 @@ def main(): execute_from_command_line(sys.argv) -if __name__ == '__main__': +if __name__ == "__main__": main() diff --git a/unisportomat/quiz/admin.py b/unisportomat/quiz/admin.py index 83f1f9ab498f769dee9241a828b24bfb45b2b66a..f923673471def48caffd3673c755684424e2d7ba 100644 --- a/unisportomat/quiz/admin.py +++ b/unisportomat/quiz/admin.py @@ -1,7 +1,9 @@ +""" +Register our own Models from models.py to the Admin Panel +""" from django.contrib import admin # Register your models here. from .models import Sport admin.site.register(Sport) - diff --git a/unisportomat/quiz/apps.py b/unisportomat/quiz/apps.py index 3dc8afe709c0cc58fe5933eaba8025fe7ea0e526..4cb9182079a47d5000f727393c7ab6540ea2a0de 100644 --- a/unisportomat/quiz/apps.py +++ b/unisportomat/quiz/apps.py @@ -1,6 +1,13 @@ +""" +Pregenerated by Django +""" from django.apps import AppConfig class QuizConfig(AppConfig): - default_auto_field = 'django.db.models.BigAutoField' - name = 'quiz' + """ + Pregenerated by Django + """ + + default_auto_field = "django.db.models.BigAutoField" + name = "quiz" diff --git a/unisportomat/quiz/migrations/0001_initial.py b/unisportomat/quiz/migrations/0001_initial.py new file mode 100644 index 0000000000000000000000000000000000000000..4a352c63be607086b6b8060952c7ce577982e320 --- /dev/null +++ b/unisportomat/quiz/migrations/0001_initial.py @@ -0,0 +1,206 @@ +# Generated by Django 3.2 on 2021-05-25 17:51 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [] + + operations = [ + migrations.CreateModel( + name="Question", + fields=[ + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ], + ), + migrations.CreateModel( + name="Sport", + fields=[ + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ( + "sportart", + models.TextField( + choices=[ + ("After Work Fitness", "After Work Fitness"), + ("Ballett", "Ballett"), + ("Basketball", "Basketball"), + ("Beachvolleyball", "Beachvolleyball"), + ("Bouldern", "Bouldern"), + ("Drachenfliegen", "Drachenfliegen"), + ("Functional Fitness", "Functional Fitness"), + ("Gerätturnen", "Gerätturnen"), + ("HIIT", "HIIT"), + ("Karate", "Karate"), + ("Kickboxen", "Kickboxen"), + ("Laufen", "Laufen"), + ("Pilates", "Pilates"), + ("Qigong", "Qigong"), + ("Rückenfit", "Rückenfit"), + ( + "Segeln Sportbootführerschein", + "Segeln Sportbootführerschein", + ), + ( + "Skilanglauf & Schneeschuhwandern", + "Skilanglauf & Schneeschuhwandern", + ), + ("Sweat & Relax", "Sweat & Relax"), + ("Tennis", "Tennis"), + ("Ultimate Frisbee", "Ultimate Frisbee"), + ("Yoga", "Yoga"), + ] + ), + ), + ( + "field", + models.CharField( + choices=[("indoor", "indoor"), ("outdoor", "outdoor")], + default="outdoor", + max_length=50, + ), + ), + ( + "einzelsport", + models.IntegerField( + choices=[ + (1, 1), + (2, 2), + (3, 3), + (4, 4), + (5, 5), + (6, 6), + (7, 7), + (8, 8), + (9, 9), + (10, 10), + ], + default=1, + ), + ), + ( + "mannschaftssport", + models.IntegerField( + choices=[ + (1, 1), + (2, 2), + (3, 3), + (4, 4), + (5, 5), + (6, 6), + (7, 7), + (8, 8), + (9, 9), + (10, 10), + ], + default=1, + ), + ), + ( + "ausdauer", + models.IntegerField( + choices=[ + (1, 1), + (2, 2), + (3, 3), + (4, 4), + (5, 5), + (6, 6), + (7, 7), + (8, 8), + (9, 9), + (10, 10), + ], + default=1, + ), + ), + ( + "kraft", + models.IntegerField( + choices=[ + (1, 1), + (2, 2), + (3, 3), + (4, 4), + (5, 5), + (6, 6), + (7, 7), + (8, 8), + (9, 9), + (10, 10), + ], + default=1, + ), + ), + ( + "kampfsport", + models.IntegerField( + choices=[ + (1, 1), + (2, 2), + (3, 3), + (4, 4), + (5, 5), + (6, 6), + (7, 7), + (8, 8), + (9, 9), + (10, 10), + ], + default=1, + ), + ), + ( + "technischakrobatisch", + models.IntegerField( + choices=[ + (1, 1), + (2, 2), + (3, 3), + (4, 4), + (5, 5), + (6, 6), + (7, 7), + (8, 8), + (9, 9), + (10, 10), + ], + default=1, + ), + ), + ("url", models.TextField()), + ], + ), + migrations.CreateModel( + name="Wissensnack", + fields=[ + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ], + ), + ] diff --git a/unisportomat/quiz/migrations/0001_refactor_sport_and_add_criteria.py b/unisportomat/quiz/migrations/0001_refactor_sport_and_add_criteria.py index 31b661347cd7db1b1069ce60d1be68b294b92974..1ce88d65db48e667a641c6fc706fab5b2f9768da 100644 --- a/unisportomat/quiz/migrations/0001_refactor_sport_and_add_criteria.py +++ b/unisportomat/quiz/migrations/0001_refactor_sport_and_add_criteria.py @@ -7,86 +7,280 @@ import django.db.models.deletion class Migration(migrations.Migration): - replaces = [('quiz', '0001_initial'), ('quiz', '0002_wissensnack_text'), ('quiz', '0003_auto_20210517_1437'), ('quiz', '0004_criterion'), ('quiz', '0005_auto_20210517_1520'), ('quiz', '0006_rename_criterion_ratings_sport_criteria_ratings'), ('quiz', '0007_auto_20210518_1521'), ('quiz', '0008_alter_sport_url')] + replaces = [ + ("quiz", "0001_initial"), + ("quiz", "0002_wissensnack_text"), + ("quiz", "0003_auto_20210517_1437"), + ("quiz", "0004_criterion"), + ("quiz", "0005_auto_20210517_1520"), + ("quiz", "0006_rename_criterion_ratings_sport_criteria_ratings"), + ("quiz", "0007_auto_20210518_1521"), + ("quiz", "0008_alter_sport_url"), + ] initial = True - dependencies = [ - ] + dependencies = [] operations = [ migrations.CreateModel( - name='Sport', + name="Sport", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.TextField(choices=[('After Work Fitness', 'After Work Fitness'), ('Ballett', 'Ballett'), ('Basketball', 'Basketball'), ('Beachvolleyball', 'Beachvolleyball'), ('Bouldern', 'Bouldern'), ('Drachenfliegen', 'Drachenfliegen'), ('Functional Fitness', 'Functional Fitness'), ('Gerätturnen', 'Gerätturnen'), ('HIIT', 'HIIT'), ('Karate', 'Karate'), ('Kickboxen', 'Kickboxen'), ('Laufen', 'Laufen'), ('Pilates', 'Pilates'), ('Qigong', 'Qigong'), ('Rückenfit', 'Rückenfit'), ('Segeln Sportbootführerschein', 'Segeln Sportbootführerschein'), ('Skilanglauf & Schneeschuhwandern', 'Skilanglauf & Schneeschuhwandern'), ('Sweat & Relax', 'Sweat & Relax'), ('Tennis', 'Tennis'), ('Ultimate Frisbee', 'Ultimate Frisbee'), ('Yoga', 'Yoga')])), - ('field', models.CharField(choices=[('indoor', 'indoor'), ('outdoor', 'outdoor')], default='outdoor', max_length=50)), - ('einzelsport', models.IntegerField(choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10)], default=1)), - ('mannschaftssport', models.IntegerField(choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10)], default=1)), - ('ausdauer', models.IntegerField(choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10)], default=1)), - ('kraft', models.IntegerField(choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10)], default=1)), - ('kampfsport', models.IntegerField(choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10)], default=1)), - ('technischakrobatisch', models.IntegerField(choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10)], default=1)), - ('url', models.TextField()), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ( + "name", + models.TextField( + choices=[ + ("After Work Fitness", "After Work Fitness"), + ("Ballett", "Ballett"), + ("Basketball", "Basketball"), + ("Beachvolleyball", "Beachvolleyball"), + ("Bouldern", "Bouldern"), + ("Drachenfliegen", "Drachenfliegen"), + ("Functional Fitness", "Functional Fitness"), + ("Gerätturnen", "Gerätturnen"), + ("HIIT", "HIIT"), + ("Karate", "Karate"), + ("Kickboxen", "Kickboxen"), + ("Laufen", "Laufen"), + ("Pilates", "Pilates"), + ("Qigong", "Qigong"), + ("Rückenfit", "Rückenfit"), + ( + "Segeln Sportbootführerschein", + "Segeln Sportbootführerschein", + ), + ( + "Skilanglauf & Schneeschuhwandern", + "Skilanglauf & Schneeschuhwandern", + ), + ("Sweat & Relax", "Sweat & Relax"), + ("Tennis", "Tennis"), + ("Ultimate Frisbee", "Ultimate Frisbee"), + ("Yoga", "Yoga"), + ] + ), + ), + ( + "field", + models.CharField( + choices=[("indoor", "indoor"), ("outdoor", "outdoor")], + default="outdoor", + max_length=50, + ), + ), + ( + "einzelsport", + models.IntegerField( + choices=[ + (1, 1), + (2, 2), + (3, 3), + (4, 4), + (5, 5), + (6, 6), + (7, 7), + (8, 8), + (9, 9), + (10, 10), + ], + default=1, + ), + ), + ( + "mannschaftssport", + models.IntegerField( + choices=[ + (1, 1), + (2, 2), + (3, 3), + (4, 4), + (5, 5), + (6, 6), + (7, 7), + (8, 8), + (9, 9), + (10, 10), + ], + default=1, + ), + ), + ( + "ausdauer", + models.IntegerField( + choices=[ + (1, 1), + (2, 2), + (3, 3), + (4, 4), + (5, 5), + (6, 6), + (7, 7), + (8, 8), + (9, 9), + (10, 10), + ], + default=1, + ), + ), + ( + "kraft", + models.IntegerField( + choices=[ + (1, 1), + (2, 2), + (3, 3), + (4, 4), + (5, 5), + (6, 6), + (7, 7), + (8, 8), + (9, 9), + (10, 10), + ], + default=1, + ), + ), + ( + "kampfsport", + models.IntegerField( + choices=[ + (1, 1), + (2, 2), + (3, 3), + (4, 4), + (5, 5), + (6, 6), + (7, 7), + (8, 8), + (9, 9), + (10, 10), + ], + default=1, + ), + ), + ( + "technischakrobatisch", + models.IntegerField( + choices=[ + (1, 1), + (2, 2), + (3, 3), + (4, 4), + (5, 5), + (6, 6), + (7, 7), + (8, 8), + (9, 9), + (10, 10), + ], + default=1, + ), + ), + ("url", models.TextField()), ], ), migrations.CreateModel( - name='Criterion', + name="Criterion", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.TextField()), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ("name", models.TextField()), ], ), migrations.CreateModel( - name='CriterionRating', + name="CriterionRating", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('rating', models.IntegerField(validators=[django.core.validators.MaxValueValidator(10), django.core.validators.MinValueValidator(0)])), - ('criterion', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='quiz.criterion')), - ('sport', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='quiz.sport')), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ( + "rating", + models.IntegerField( + validators=[ + django.core.validators.MaxValueValidator(10), + django.core.validators.MinValueValidator(0), + ] + ), + ), + ( + "criterion", + models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, to="quiz.criterion" + ), + ), + ( + "sport", + models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, to="quiz.sport" + ), + ), ], ), migrations.AddField( - model_name='sport', - name='criteria_ratings', - field=models.ManyToManyField(through='quiz.CriterionRating', to='quiz.Criterion'), + model_name="sport", + name="criteria_ratings", + field=models.ManyToManyField( + through="quiz.CriterionRating", to="quiz.Criterion" + ), ), migrations.RemoveField( - model_name='sport', - name='ausdauer', + model_name="sport", + name="ausdauer", ), migrations.RemoveField( - model_name='sport', - name='einzelsport', + model_name="sport", + name="einzelsport", ), migrations.RemoveField( - model_name='sport', - name='field', + model_name="sport", + name="field", ), migrations.RemoveField( - model_name='sport', - name='kampfsport', + model_name="sport", + name="kampfsport", ), migrations.RemoveField( - model_name='sport', - name='kraft', + model_name="sport", + name="kraft", ), migrations.RemoveField( - model_name='sport', - name='mannschaftssport', + model_name="sport", + name="mannschaftssport", ), migrations.RemoveField( - model_name='sport', - name='technischakrobatisch', + model_name="sport", + name="technischakrobatisch", ), migrations.AlterField( - model_name='sport', - name='name', + model_name="sport", + name="name", field=models.TextField(), ), migrations.AlterField( - model_name='sport', - name='url', + model_name="sport", + name="url", field=models.URLField(), ), ] diff --git a/unisportomat/quiz/views.py b/unisportomat/quiz/views.py index 91ea44a218fbd2f408430959283f0419c921093e..158b6869728e5d0e1567afa39f947d5b0fa5bb11 100644 --- a/unisportomat/quiz/views.py +++ b/unisportomat/quiz/views.py @@ -1,3 +1,6 @@ -from django.shortcuts import render +""" +Pregenerated by Django. Here, our REST-API can be defined. +""" +# from django.shortcuts import render # Create your views here. diff --git a/unisportomat/unisportomat/asgi.py b/unisportomat/unisportomat/asgi.py index 4f5e4adbc19efbc37ec3080317955517520a0113..d503bb1efa1b634c958cb67c43e16a3d1b4426b3 100644 --- a/unisportomat/unisportomat/asgi.py +++ b/unisportomat/unisportomat/asgi.py @@ -11,6 +11,6 @@ import os from django.core.asgi import get_asgi_application -os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'unisportomat.settings') +os.environ.setdefault("DJANGO_SETTINGS_MODULE", "unisportomat.settings") application = get_asgi_application() diff --git a/unisportomat/unisportomat/settings.py b/unisportomat/unisportomat/settings.py index 23f0cbdb1ed78fc8b2dfd21a2e5c4e27ac3eca39..c54aefc42d129ce476789895662b66a8285a0871 100644 --- a/unisportomat/unisportomat/settings.py +++ b/unisportomat/unisportomat/settings.py @@ -20,7 +20,7 @@ BASE_DIR = Path(__file__).resolve().parent.parent # See https://docs.djangoproject.com/en/3.2/howto/deployment/checklist/ # SECURITY WARNING: keep the secret key used in production secret! -SECRET_KEY = 'django-insecure-vl*o#be$=k)9mbtm3!8k!6pe&38cdfg1*#_y3s)kgp$czt4ctm' +SECRET_KEY = "django-insecure-vl*o#be$=k)9mbtm3!8k!6pe&38cdfg1*#_y3s)kgp$czt4ctm" # SECURITY WARNING: don't run with debug turned on in production! DEBUG = True @@ -31,53 +31,53 @@ ALLOWED_HOSTS = [] # Application definition INSTALLED_APPS = [ - 'quiz.apps.QuizConfig', - 'django.contrib.admin', - 'django.contrib.auth', - 'django.contrib.contenttypes', - 'django.contrib.sessions', - 'django.contrib.messages', - 'django.contrib.staticfiles', + "quiz.apps.QuizConfig", + "django.contrib.admin", + "django.contrib.auth", + "django.contrib.contenttypes", + "django.contrib.sessions", + "django.contrib.messages", + "django.contrib.staticfiles", ] MIDDLEWARE = [ - 'django.middleware.security.SecurityMiddleware', - 'django.contrib.sessions.middleware.SessionMiddleware', - 'django.middleware.common.CommonMiddleware', - 'django.middleware.csrf.CsrfViewMiddleware', - 'django.contrib.auth.middleware.AuthenticationMiddleware', - 'django.contrib.messages.middleware.MessageMiddleware', - 'django.middleware.clickjacking.XFrameOptionsMiddleware', + "django.middleware.security.SecurityMiddleware", + "django.contrib.sessions.middleware.SessionMiddleware", + "django.middleware.common.CommonMiddleware", + "django.middleware.csrf.CsrfViewMiddleware", + "django.contrib.auth.middleware.AuthenticationMiddleware", + "django.contrib.messages.middleware.MessageMiddleware", + "django.middleware.clickjacking.XFrameOptionsMiddleware", ] -ROOT_URLCONF = 'unisportomat.urls' +ROOT_URLCONF = "unisportomat.urls" TEMPLATES = [ { - 'BACKEND': 'django.template.backends.django.DjangoTemplates', - 'DIRS': [], - 'APP_DIRS': True, - 'OPTIONS': { - 'context_processors': [ - 'django.template.context_processors.debug', - 'django.template.context_processors.request', - 'django.contrib.auth.context_processors.auth', - 'django.contrib.messages.context_processors.messages', + "BACKEND": "django.template.backends.django.DjangoTemplates", + "DIRS": [], + "APP_DIRS": True, + "OPTIONS": { + "context_processors": [ + "django.template.context_processors.debug", + "django.template.context_processors.request", + "django.contrib.auth.context_processors.auth", + "django.contrib.messages.context_processors.messages", ], }, }, ] -WSGI_APPLICATION = 'unisportomat.wsgi.application' +WSGI_APPLICATION = "unisportomat.wsgi.application" # Database # https://docs.djangoproject.com/en/3.2/ref/settings/#databases DATABASES = { - 'default': { - 'ENGINE': 'django.db.backends.sqlite3', - 'NAME': BASE_DIR / 'db.sqlite3', + "default": { + "ENGINE": "django.db.backends.sqlite3", + "NAME": BASE_DIR / "db.sqlite3", } } @@ -87,16 +87,16 @@ DATABASES = { AUTH_PASSWORD_VALIDATORS = [ { - 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', + "NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator", }, { - 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', + "NAME": "django.contrib.auth.password_validation.MinimumLengthValidator", }, { - 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', + "NAME": "django.contrib.auth.password_validation.CommonPasswordValidator", }, { - 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', + "NAME": "django.contrib.auth.password_validation.NumericPasswordValidator", }, ] @@ -104,9 +104,9 @@ AUTH_PASSWORD_VALIDATORS = [ # Internationalization # https://docs.djangoproject.com/en/3.2/topics/i18n/ -LANGUAGE_CODE = 'en-us' +LANGUAGE_CODE = "en-us" -TIME_ZONE = 'UTC' +TIME_ZONE = "UTC" USE_I18N = True @@ -118,9 +118,9 @@ USE_TZ = True # Static files (CSS, JavaScript, Images) # https://docs.djangoproject.com/en/3.2/howto/static-files/ -STATIC_URL = '/static/' +STATIC_URL = "/static/" # Default primary key field type # https://docs.djangoproject.com/en/3.2/ref/settings/#default-auto-field -DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' +DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField" diff --git a/unisportomat/unisportomat/urls.py b/unisportomat/unisportomat/urls.py index d79854d6d845e983fbb7ddc3cde1007a4f6b61ce..6a11f8a60766e41893a573be88f18d3f4a3e5040 100644 --- a/unisportomat/unisportomat/urls.py +++ b/unisportomat/unisportomat/urls.py @@ -17,5 +17,5 @@ from django.contrib import admin from django.urls import path urlpatterns = [ - path('admin/', admin.site.urls), + path("admin/", admin.site.urls), ] diff --git a/unisportomat/unisportomat/wsgi.py b/unisportomat/unisportomat/wsgi.py index cb8ee8a35639c9e3ab865f01769f110888c3b4f6..de754719e78d2ea0a883add5fb16b622c1582888 100644 --- a/unisportomat/unisportomat/wsgi.py +++ b/unisportomat/unisportomat/wsgi.py @@ -11,6 +11,6 @@ import os from django.core.wsgi import get_wsgi_application -os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'unisportomat.settings') +os.environ.setdefault("DJANGO_SETTINGS_MODULE", "unisportomat.settings") application = get_wsgi_application()