From 34cb29afd3a9270e0b3e11d74c465af3aa1c49ce Mon Sep 17 00:00:00 2001 From: David Kerkeslager Date: Thu, 3 Mar 2022 23:55:30 -0500 Subject: [PATCH] Fix related names --- ...der_cluster_alter_cluster_area_and_more.py | 44 +++++++++++++++++++ src/climbing/models.py | 36 ++++++++++++--- 2 files changed, 74 insertions(+), 6 deletions(-) create mode 100644 src/climbing/migrations/0002_alter_boulder_cluster_alter_cluster_area_and_more.py diff --git a/src/climbing/migrations/0002_alter_boulder_cluster_alter_cluster_area_and_more.py b/src/climbing/migrations/0002_alter_boulder_cluster_alter_cluster_area_and_more.py new file mode 100644 index 0000000..bc3d64d --- /dev/null +++ b/src/climbing/migrations/0002_alter_boulder_cluster_alter_cluster_area_and_more.py @@ -0,0 +1,44 @@ +# Generated by Django 4.0.3 on 2022-03-04 04:54 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('climbing', '0001_initial'), + ] + + operations = [ + migrations.AlterField( + model_name='boulder', + name='cluster', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='boulders', to='climbing.cluster'), + ), + migrations.AlterField( + model_name='cluster', + name='area', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='clusters', to='climbing.area'), + ), + migrations.AlterField( + model_name='crag', + name='area', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='crags', to='climbing.area'), + ), + migrations.AlterField( + model_name='pitch', + name='route', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='pitches', to='climbing.route'), + ), + migrations.AlterField( + model_name='problem', + name='boulder', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='problems', to='climbing.boulder'), + ), + migrations.AlterField( + model_name='route', + name='area', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='routes', to='climbing.crag'), + ), + ] diff --git a/src/climbing/models.py b/src/climbing/models.py index 0f17d7a..1693a05 100644 --- a/src/climbing/models.py +++ b/src/climbing/models.py @@ -5,12 +5,20 @@ class Area(models.Model): notes = models.TextField() class Crag(models.Model): - area = models.ForeignKey(Area, on_delete=models.CASCADE) + area = models.ForeignKey( + Area, + on_delete=models.CASCADE, + related_name='crags', + ) name = models.CharField(max_length=64) notes = models.TextField() class Route(models.Model): - area = models.ForeignKey(Crag, on_delete=models.CASCADE) + area = models.ForeignKey( + Crag, + on_delete=models.CASCADE, + related_name='routes', + ) name = models.CharField(max_length=64) notes = models.TextField() @@ -65,19 +73,31 @@ SAFETY_CHOICES = ( ) class Pitch(models.Model): - route = models.ForeignKey(Route, on_delete=models.CASCADE) + route = models.ForeignKey( + Route, + on_delete=models.CASCADE, + related_name='pitches', + ) name = models.CharField(max_length=64, null=True) difficulty = models.CharField(max_length=5, choices=ROUTE_DIFFICULTY_CHOICES) safety = models.CharField(max_length=4, choices=SAFETY_CHOICES) notes = models.TextField() class Cluster(models.Model): - area = models.ForeignKey(Area, on_delete=models.CASCADE) + area = models.ForeignKey( + Area, + on_delete=models.CASCADE, + related_name='clusters', + ) name = models.CharField(max_length=64) notes = models.TextField() class Boulder(models.Model): - cluster = models.ForeignKey(Cluster, on_delete=models.CASCADE) + cluster = models.ForeignKey( + Cluster, + on_delete=models.CASCADE, + related_name='boulders', + ) name = models.CharField(max_length=64) notes = models.TextField() @@ -103,7 +123,11 @@ BOULDER_DIFFICULTY_CHOICES = ( ) class Problem(models.Model): - boulder = models.ForeignKey(Boulder, on_delete=models.CASCADE) + boulder = models.ForeignKey( + Boulder, + on_delete=models.CASCADE, + related_name='problems', + ) name = models.CharField(max_length=64) difficulty = models.CharField(max_length=3, choices=BOULDER_DIFFICULTY_CHOICES) safety = models.CharField(max_length=4, choices=SAFETY_CHOICES) -- 2.20.1