mirror of
https://github.com/HamzaSha1/zod-backend.git
synced 2025-11-27 09:04:54 +00:00
junior article points table
This commit is contained in:
@ -345,6 +345,6 @@ class GuardianListAPIView(viewsets.ModelViewSet):
|
|||||||
# use GuardianDetailListSerializer serializer
|
# use GuardianDetailListSerializer serializer
|
||||||
serializer = GuardianDetailListSerializer(guardian_data, many=True)
|
serializer = GuardianDetailListSerializer(guardian_data, many=True)
|
||||||
return custom_response(None, serializer.data, response_status=status.HTTP_200_OK)
|
return custom_response(None, serializer.data, response_status=status.HTTP_200_OK)
|
||||||
return custom_error_response(ERROR_CODE['2068'], response_status=status.HTTP_200_OK)
|
return custom_response(ERROR_CODE['2068'], response_status=status.HTTP_200_OK)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST)
|
return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST)
|
||||||
|
|||||||
30
junior/migrations/0019_juniorarticlepoints.py
Normal file
30
junior/migrations/0019_juniorarticlepoints.py
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
# Generated by Django 4.2.2 on 2023-08-07 13:29
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
import django.db.models.deletion
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('web_admin', '0004_alter_surveyoption_survey'),
|
||||||
|
('junior', '0018_remove_junior_relationship_and_more'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='JuniorArticlePoints',
|
||||||
|
fields=[
|
||||||
|
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
|
('earn_points', models.IntegerField(blank=True, default=5, null=True)),
|
||||||
|
('is_attempt', models.BooleanField(default=False)),
|
||||||
|
('is_answer_correct', models.BooleanField(default=False)),
|
||||||
|
('created_at', models.DateTimeField(auto_now_add=True)),
|
||||||
|
('updated_at', models.DateTimeField(auto_now=True)),
|
||||||
|
('article', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='junior_articles', to='web_admin.article')),
|
||||||
|
('junior', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='juniors_details', to='junior.junior', verbose_name='Junior')),
|
||||||
|
('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='questions', to='web_admin.articlesurvey')),
|
||||||
|
('submitted_answer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='submitted_answer', to='web_admin.surveyoption')),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
]
|
||||||
@ -9,7 +9,8 @@ from django.contrib.postgres.fields import ArrayField
|
|||||||
from base.constants import GENDERS, SIGNUP_METHODS, RELATIONSHIP
|
from base.constants import GENDERS, SIGNUP_METHODS, RELATIONSHIP
|
||||||
# Import guardian's model
|
# Import guardian's model
|
||||||
from guardian.models import Guardian
|
from guardian.models import Guardian
|
||||||
|
# Import web admin's model
|
||||||
|
from web_admin.models import SurveyOption, ArticleSurvey, Article
|
||||||
"""Define User model"""
|
"""Define User model"""
|
||||||
User = get_user_model()
|
User = get_user_model()
|
||||||
# Create your models here.
|
# Create your models here.
|
||||||
@ -137,3 +138,22 @@ class JuniorGuardianRelationship(models.Model):
|
|||||||
return f'{self.guardian.user}'
|
return f'{self.guardian.user}'
|
||||||
|
|
||||||
|
|
||||||
|
class JuniorArticlePoints(models.Model):
|
||||||
|
"""
|
||||||
|
Survey Options model
|
||||||
|
"""
|
||||||
|
# associated junior with the task
|
||||||
|
junior = models.ForeignKey(Junior, on_delete=models.CASCADE, related_name='juniors_details', verbose_name='Junior')
|
||||||
|
article = models.ForeignKey(Article, on_delete=models.CASCADE, related_name='junior_articles')
|
||||||
|
question = models.ForeignKey(ArticleSurvey, on_delete=models.CASCADE, related_name='questions')
|
||||||
|
submitted_answer = models.ForeignKey(SurveyOption, on_delete=models.CASCADE, related_name='submitted_answer')
|
||||||
|
# earn points"""
|
||||||
|
earn_points = models.IntegerField(blank=True, null=True, default=5)
|
||||||
|
is_attempt = models.BooleanField(default=False)
|
||||||
|
is_answer_correct = models.BooleanField(default=False)
|
||||||
|
created_at = models.DateTimeField(auto_now_add=True)
|
||||||
|
updated_at = models.DateTimeField(auto_now=True)
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
"""Return title"""
|
||||||
|
return f'{self.id} | {self.question}'
|
||||||
|
|||||||
Reference in New Issue
Block a user