Commit c20cceb2 authored by Christopher Jorge Chan's avatar Christopher Jorge Chan

updated models and views

parents 49419874 8099d616
from django.contrib import admin from django.contrib import admin
from .models import Announcement from .models import Announcement, Reaction
# Register your models here. # Register your models here.
admin.site.register(Announcement) admin.site.register(Announcement)
\ No newline at end of file admin.site.register(Reaction)
\ No newline at end of file
# Generated by Django 3.2.12 on 2022-03-22 08:20 # Generated by Django 3.2.12 on 2022-04-05 05:33
from django.db import migrations, models from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration): class Migration(migrations.Migration):
...@@ -8,6 +9,7 @@ class Migration(migrations.Migration): ...@@ -8,6 +9,7 @@ class Migration(migrations.Migration):
initial = True initial = True
dependencies = [ dependencies = [
('homepage', '0001_initial'),
] ]
operations = [ operations = [
...@@ -18,6 +20,16 @@ class Migration(migrations.Migration): ...@@ -18,6 +20,16 @@ class Migration(migrations.Migration):
('announcement_title', models.CharField(max_length=70)), ('announcement_title', models.CharField(max_length=70)),
('announcement_body', models.CharField(max_length=1000)), ('announcement_body', models.CharField(max_length=1000)),
('pub_date', models.DateTimeField(auto_now_add=True)), ('pub_date', models.DateTimeField(auto_now_add=True)),
('author', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='homepage.widgetuser')),
],
),
migrations.CreateModel(
name='Reaction',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('reaction_name', models.CharField(max_length=15)),
('tally', models.IntegerField(default=0)),
('article', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='announcements.announcement')),
], ],
), ),
] ]
from django.db import models from django.db import models
from django.forms import DateTimeField from django.forms import DateTimeField
from homepage.models import WidgetUser
# Create your models here. # Create your models here.
class Announcement(models.Model): class Announcement(models.Model):
announcement_title = models.CharField(max_length=70) announcement_title = models.CharField(max_length=70)
announcement_body = models.CharField(max_length=1000) announcement_body = models.CharField(max_length=1000)
pub_date = models.DateTimeField(auto_now_add=True) pub_date = models.DateTimeField(auto_now_add=True)
\ No newline at end of file author = models.ForeignKey(WidgetUser, on_delete=models.CASCADE, null = True)
def __str__(self):
return self.announcement_title
class Reaction(models.Model):
article = models.ForeignKey(Announcement, on_delete=models.CASCADE)
reaction_name = models.CharField(max_length=15)
tally = models.IntegerField(default=0)
def __str__(self):
return self.reaction_name
\ No newline at end of file
# Generated by Django 3.2.12 on 2022-04-05 06:47
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('assignments', '0005_assignment_course'),
]
operations = [
migrations.AddField(
model_name='assignment',
name='passing_score',
field=models.IntegerField(default=0),
),
]
from django.db import models from django.db import models
# Create your models here.
class Course(models.Model): class Course(models.Model):
course_code = models.CharField(max_length=10) course_code = models.CharField(max_length=10)
course_title = models.CharField(max_length=500) course_title = models.CharField(max_length=500)
section = models.CharField(max_length=3) section = models.CharField(max_length=3)
def __str__(self):
return self.course_title
class Assignment(models.Model): class Assignment(models.Model):
course = models.ForeignKey(Course, on_delete=models.CASCADE, null=True) course = models.ForeignKey(Course, on_delete=models.CASCADE, null=True)
name = models.CharField(max_length=50) name = models.CharField(max_length=50)
description = models.CharField(max_length=500) description = models.CharField(max_length=500)
max_points = models.IntegerField(default=0) max_points = models.IntegerField(default=0)
passing_score = models.IntegerField(default=0)
def __str__(self):
return self.name
from django.http import HttpResponse from django.http import HttpResponse
from django.shortcuts import render
from .models import Course, Assignment
# Create your views here. # Create your views here.
def index(request): def index(request):
return HttpResponse("This is the Assignments page!")
message = 'ASSIGNMENTS:<br/>'
course = Course.objects.all()
assignment = Assignment.objects.all()
for i in course:
for j in assignment:
if i.course_code == j.course.course_code:
j.passing_score = j.max_points*0.6
j.save()
message += f'Assignment Name: {j.name} <br/> Decription: {j.description} <br/> Perfect Score: {j.max_points} <br/> Passing Score: {int(j.passing_score)} <br/>'
message += f'Course/Section: {i.course_code} {i.course_title} {i.section} <br/>'
message += '<br/>'
return HttpResponse(message)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment