diff --git a/guardian/migrations/0020_alter_juniortask_task_status.py b/guardian/migrations/0020_alter_juniortask_task_status.py new file mode 100644 index 0000000..241ae10 --- /dev/null +++ b/guardian/migrations/0020_alter_juniortask_task_status.py @@ -0,0 +1,18 @@ +# Generated by Django 4.2.2 on 2023-07-25 07:44 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('guardian', '0019_guardian_is_invited_guardian_is_password_set'), + ] + + operations = [ + migrations.AlterField( + model_name='juniortask', + name='task_status', + field=models.CharField(choices=[('1', 'pending'), ('2', 'in-progress'), ('3', 'rejected'), ('4', 'requested'), ('5', 'completed'), ('6', 'expired')], default=1, max_length=15), + ), + ] diff --git a/guardian/models.py b/guardian/models.py index 6ecd27b..45afee7 100644 --- a/guardian/models.py +++ b/guardian/models.py @@ -5,7 +5,7 @@ from django.contrib.auth import get_user_model """Import Django app""" from base.constants import GENDERS, TASK_STATUS, PENDING, TASK_POINTS, SIGNUP_METHODS """import Junior model""" -from junior.models import Junior +import junior.models """Add user model""" User = get_user_model() @@ -105,7 +105,7 @@ class JuniorTask(models.Model): """image that is uploaded by junior""" image = models.URLField(null=True, blank=True, default=None) """associated junior with the task""" - junior = models.ForeignKey(Junior, on_delete=models.CASCADE, related_name='junior', verbose_name='Junior') + junior = models.ForeignKey('junior.Junior', on_delete=models.CASCADE, related_name='junior', verbose_name='Junior') """task status""" task_status = models.CharField(choices=TASK_STATUS, max_length=15, default=PENDING) """task is active or not""" diff --git a/junior/migrations/0017_juniorguardianrelationship.py b/junior/migrations/0017_juniorguardianrelationship.py new file mode 100644 index 0000000..99d1707 --- /dev/null +++ b/junior/migrations/0017_juniorguardianrelationship.py @@ -0,0 +1,31 @@ +# Generated by Django 4.2.2 on 2023-07-25 07:44 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('guardian', '0020_alter_juniortask_task_status'), + ('junior', '0016_juniorpoints_referral_points'), + ] + + operations = [ + migrations.CreateModel( + name='JuniorGuardianRelationship', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('relationship', models.CharField(blank=True, choices=[('1', 'parent'), ('2', 'legal_guardian')], default='1', max_length=31, null=True)), + ('created_at', models.DateTimeField(auto_now_add=True)), + ('updated_at', models.DateTimeField(auto_now=True)), + ('guardian', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='guardian_relation', to='guardian.guardian', verbose_name='Guardian')), + ('junior', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='junior_relation', to='junior.junior', verbose_name='Junior')), + ], + options={ + 'verbose_name': 'Junior Guardian Relation', + 'verbose_name_plural': 'Junior Guardian Relation', + 'db_table': 'junior_guardian_relation', + }, + ), + ] diff --git a/junior/models.py b/junior/models.py index 8098109..2bba176 100644 --- a/junior/models.py +++ b/junior/models.py @@ -7,6 +7,8 @@ from django.contrib.auth import get_user_model from django.contrib.postgres.fields import ArrayField """Import django app""" from base.constants import GENDERS, SIGNUP_METHODS, RELATIONSHIP +# Import guardian's model +from guardian.models import Guardian """Define User model""" User = get_user_model() @@ -113,9 +115,9 @@ class JuniorPoints(models.Model): class JuniorGuardianRelationship(models.Model): """Junior Guardian relationship model""" - guardian = models.ForeignKey(Guardian, on_delete=models.CASCADE, related_name='guardian', verbose_name='Guardian') + guardian = models.ForeignKey(Guardian, on_delete=models.CASCADE, related_name='guardian_relation', verbose_name='Guardian') # associated junior with the task - junior = models.ForeignKey(Junior, on_delete=models.CASCADE, related_name='junior', verbose_name='Junior') + junior = models.ForeignKey(Junior, on_delete=models.CASCADE, related_name='junior_relation', verbose_name='Junior') # relation between guardian and junior""" relationship = models.CharField(max_length=31, choices=RELATIONSHIP, null=True, blank=True, default='1')