diff --git a/db/migrations/0001_initial.py b/db/migrations/0001_initial.py new file mode 100644 index 00000000..88ceb1b0 --- /dev/null +++ b/db/migrations/0001_initial.py @@ -0,0 +1,29 @@ +# Generated by Django 4.0.2 on 2023-10-23 16:23 + +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)), + ], + ), + ] diff --git a/db/models.py b/db/models.py index 137941ff..47797cf8 100644 --- a/db/models.py +++ b/db/models.py @@ -1 +1,16 @@ from django.db import models + + +class Genre(models.Model): + name = models.CharField(max_length=255) + + def __str__(self) -> str: + return f"{self.name}" + + +class Actor(models.Model): + first_name = models.CharField(max_length=255) + last_name = models.CharField(max_length=255) + + def __str__(self) -> str: + return f"{self.first_name} {self.last_name}" diff --git a/main.py b/main.py index 545f938a..570cd1f2 100644 --- a/main.py +++ b/main.py @@ -1,7 +1,51 @@ import init_django_orm # noqa: F401 from django.db.models import QuerySet +from db.models import Actor, Genre def main() -> QuerySet: - pass + + # Actor.objects.all().delete() + # Genre.objects.all().delete() + list_of_genre = ["Western", "Action", "Dramma"] + for genre in list_of_genre: + Genre.objects.create(name=genre,) + + actors_list = [("George", "Klooney"), + ("Kianu", "Reaves"), + ("Scarlett", "Keegan"), + ("Will", "Smith"), + ("Jaden", "Smith"), + ("Scarlett", "Johansson")] + + for first_name, last_name in actors_list: + 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", + last_name="Reaves" + ).update(first_name="Keanu", last_name="Reeves") + + Genre.objects.filter(name="Action").delete() + Actor.objects.filter(first_name="Scarlett").delete() + + result = Actor.objects.filter( + last_name="Smith" + ).order_by("first_name") + return result + + +if __name__ == "__main__": + print(main()) + print(Genre.objects.all()) + print(Actor.objects.all())