From e5063e5680f0fca1c51d4468d59a1bbc853cac7a Mon Sep 17 00:00:00 2001 From: Mateusz Pawlak Date: Mon, 9 Dec 2024 17:44:25 +0100 Subject: [PATCH 1/5] solution --- db/models.py | 10 ++++++++++ main.py | 27 ++++++++++++++++++++++++++- 2 files changed, 36 insertions(+), 1 deletion(-) diff --git a/db/models.py b/db/models.py index 137941ff..6f6bba97 100644 --- a/db/models.py +++ b/db/models.py @@ -1 +1,11 @@ from django.db import models + + +class Genre(models.Model): + name = models.CharField(max_length=255) + + +class Actor(models.Model): + first_name = models.CharField(max_length=255) + last_name = models.CharField(max_length=255) + diff --git a/main.py b/main.py index 545f938a..b09cb892 100644 --- a/main.py +++ b/main.py @@ -2,6 +2,31 @@ from django.db.models import QuerySet +from db.models import Actor +from db.models import Genre + def main() -> QuerySet: - pass + genres = ["Western", "Action", "Dramma"] + actors = ["George Klooney", "Kianu Reaves", "Scarlett Keegan", "Will Smith", "Jaden Smith", "Scarlett Johansson"] + for genre in genres: + Genre.objects.create(name=genre) + + for actor in actors: + first_name, last_name = actor.split(" ") + Actor.objects.create(first_name=first_name, last_name=last_name) + + Genre.objects.filter(name="Dramma").update(name="Drama") + Actor.objects.filter(last_name="Klooney").update(last_name="Clooney") + Actor.objects.filter(first_name="Kianu").update(first_name="Keanu", last_name="Reeves") + + action_genre = Genre.objects.filter(name="Action") + if action_genre is not None: + action_genre.delete() + + actress_scarlett = Actor.objects.filter(first_name="Scarlett") + if actress_scarlett is not None: + actress_scarlett.delete() + + sorted_actors = Actor.objects.filter(last_name="Smith").order_by("first_name") + return sorted_actors From 1998e347e4828d8578c55498bc521cc2b842de36 Mon Sep 17 00:00:00 2001 From: Mateusz Pawlak Date: Mon, 9 Dec 2024 17:48:03 +0100 Subject: [PATCH 2/5] solution2 --- db/models.py | 1 - main.py | 13 +++++++++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/db/models.py b/db/models.py index 6f6bba97..dc931c25 100644 --- a/db/models.py +++ b/db/models.py @@ -8,4 +8,3 @@ class Genre(models.Model): class Actor(models.Model): first_name = models.CharField(max_length=255) last_name = models.CharField(max_length=255) - diff --git a/main.py b/main.py index b09cb892..77757789 100644 --- a/main.py +++ b/main.py @@ -8,17 +8,22 @@ def main() -> QuerySet: genres = ["Western", "Action", "Dramma"] - actors = ["George Klooney", "Kianu Reaves", "Scarlett Keegan", "Will Smith", "Jaden Smith", "Scarlett Johansson"] + actors = ["George Klooney", "Kianu Reaves", + "Scarlett Keegan", "Will Smith", + "Jaden Smith", "Scarlett Johansson"] for genre in genres: Genre.objects.create(name=genre) for actor in actors: first_name, last_name = actor.split(" ") - Actor.objects.create(first_name=first_name, last_name=last_name) + Actor.objects.create(first_name=first_name, + last_name=last_name) Genre.objects.filter(name="Dramma").update(name="Drama") - Actor.objects.filter(last_name="Klooney").update(last_name="Clooney") - Actor.objects.filter(first_name="Kianu").update(first_name="Keanu", last_name="Reeves") + (Actor.objects.filter(last_name="Klooney"). + update(last_name="Clooney")) + (Actor.objects.filter(first_name="Kianu"). + update(first_name="Keanu", last_name="Reeves")) action_genre = Genre.objects.filter(name="Action") if action_genre is not None: From c054314f2d52705abe7e72f1708015b44a294605 Mon Sep 17 00:00:00 2001 From: Mateusz Pawlak Date: Mon, 9 Dec 2024 17:50:00 +0100 Subject: [PATCH 3/5] solution3 --- main.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/main.py b/main.py index 77757789..7feef69a 100644 --- a/main.py +++ b/main.py @@ -26,12 +26,14 @@ def main() -> QuerySet: update(first_name="Keanu", last_name="Reeves")) action_genre = Genre.objects.filter(name="Action") - if action_genre is not None: + if action_genre.exists(): action_genre.delete() actress_scarlett = Actor.objects.filter(first_name="Scarlett") - if actress_scarlett is not None: + if actress_scarlett.exists(): actress_scarlett.delete() - sorted_actors = Actor.objects.filter(last_name="Smith").order_by("first_name") + sorted_actors = (Actor.objects. + filter(last_name="Smith"). + order_by("first_name")) return sorted_actors From 0c3367fe2cc6eebea146c2815710fe0f37c82ca1 Mon Sep 17 00:00:00 2001 From: Mateusz Pawlak Date: Mon, 9 Dec 2024 17:58:59 +0100 Subject: [PATCH 4/5] solution4 --- main.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/main.py b/main.py index 7feef69a..18a3bdc2 100644 --- a/main.py +++ b/main.py @@ -8,9 +8,9 @@ def main() -> QuerySet: genres = ["Western", "Action", "Dramma"] - actors = ["George Klooney", "Kianu Reaves", - "Scarlett Keegan", "Will Smith", - "Jaden Smith", "Scarlett Johansson"] + actors = [("George Klooney"), ("Kianu Reaves"), + ("Scarlett Keegan"), ("Will Smith"), + ("Jaden Smith"), ("Scarlett Johansson")] for genre in genres: Genre.objects.create(name=genre) From 98aa63f0d01a182969980550ec6e5f3899a3281e Mon Sep 17 00:00:00 2001 From: Mateusz Pawlak Date: Mon, 9 Dec 2024 18:03:30 +0100 Subject: [PATCH 5/5] solution5 --- db/migrations/0001_initial.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 db/migrations/0001_initial.py diff --git a/db/migrations/0001_initial.py b/db/migrations/0001_initial.py new file mode 100644 index 00000000..8b8e303f --- /dev/null +++ b/db/migrations/0001_initial.py @@ -0,0 +1,29 @@ +# Generated by Django 4.0.2 on 2024-12-09 17:07 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='Actor', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('first_name', models.CharField(max_length=255)), + ('last_name', models.CharField(max_length=255)), + ], + ), + migrations.CreateModel( + name='Genre', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=255)), + ], + ), + ]