From 9e4dbdb84807e412572f819a99681c17e2f19edc Mon Sep 17 00:00:00 2001 From: vis7 Date: Thu, 22 Dec 2022 14:52:54 +0530 Subject: [PATCH] upgraded code to django-3.2.8 and python-3.8.10 --- cookbook/migrations/0001_initial.py | 53 +++++++++++++++++++++++++++++ cookbook/migrations/__init__.py | 0 cookbook/models.py | 4 +-- example/settings.py | 3 +- requirements.txt | 10 +++--- 5 files changed, 61 insertions(+), 9 deletions(-) create mode 100644 cookbook/migrations/0001_initial.py create mode 100644 cookbook/migrations/__init__.py diff --git a/cookbook/migrations/0001_initial.py b/cookbook/migrations/0001_initial.py new file mode 100644 index 0000000..94bc11f --- /dev/null +++ b/cookbook/migrations/0001_initial.py @@ -0,0 +1,53 @@ +# Generated by Django 3.2.8 on 2022-12-22 08:54 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='Food', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=255)), + ], + options={ + 'default_related_name': 'foods', + }, + ), + migrations.CreateModel( + name='Ingredient', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('amount', models.DecimalField(blank=True, decimal_places=3, max_digits=6, null=True)), + ('unit_of_measure', models.CharField(max_length=255)), + ('desc', models.TextField()), + ('food', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cookbook.food')), + ], + ), + migrations.CreateModel( + name='Recipe', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=255)), + ('desc', models.TextField(blank=True, null=True)), + ('instructions', models.TextField(blank=True, null=True)), + ('ingredients', models.ManyToManyField(related_name='recipes', through='cookbook.Ingredient', to='cookbook.Food')), + ], + options={ + 'default_related_name': 'recipes', + }, + ), + migrations.AddField( + model_name='ingredient', + name='recipe', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cookbook.recipe'), + ), + ] diff --git a/cookbook/migrations/__init__.py b/cookbook/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/cookbook/models.py b/cookbook/models.py index 73e5dff..64b5cac 100644 --- a/cookbook/models.py +++ b/cookbook/models.py @@ -40,9 +40,9 @@ def __unicode__(self): class Ingredient(models.Model): """A food that is used in a recipe.""" - recipe = models.ForeignKey(Recipe) + recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE) - food = models.ForeignKey(Food) + food = models.ForeignKey(Food, on_delete=models.CASCADE) # ex. 1/8 = 0.125, 1/4 = 0.250 amount = models.DecimalField(max_digits=6, decimal_places=3, diff --git a/example/settings.py b/example/settings.py index 17bb0da..fb79fc5 100644 --- a/example/settings.py +++ b/example/settings.py @@ -45,13 +45,12 @@ INSTALLED_APPS = DEFAULT_APPS + THIRD_PARTY_APPS + LOCAL_APPS -MIDDLEWARE_CLASSES = [ +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.auth.middleware.SessionAuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', ] diff --git a/requirements.txt b/requirements.txt index 1faa7cc..897b09a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,5 @@ -Django==1.9.8 -django-debug-toolbar==1.5 -django-redis==4.4.4 -redis==2.10.5 -sqlparse==0.2.0 +Django==3.2.8 +django-debug-toolbar==3.8.1 +django-redis==5.2.0 +redisredis==4.4.0 +sqlparse==0.4.3