mirror of
https://github.com/HamzaSha1/zod-backend.git
synced 2025-11-27 00:54:54 +00:00
junior article points table
This commit is contained in:
@ -345,6 +345,6 @@ class GuardianListAPIView(viewsets.ModelViewSet):
|
||||
# use GuardianDetailListSerializer serializer
|
||||
serializer = GuardianDetailListSerializer(guardian_data, many=True)
|
||||
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:
|
||||
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
|
||||
# Import guardian's model
|
||||
from guardian.models import Guardian
|
||||
|
||||
# Import web admin's model
|
||||
from web_admin.models import SurveyOption, ArticleSurvey, Article
|
||||
"""Define User model"""
|
||||
User = get_user_model()
|
||||
# Create your models here.
|
||||
@ -137,3 +138,22 @@ class JuniorGuardianRelationship(models.Model):
|
||||
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