Commit 05a9613a authored by Daniel W Bond's avatar Daniel W Bond
Browse files

should write before committing

parent 09bb937c
...@@ -8,12 +8,18 @@ class BaseModel(models.Model): ...@@ -8,12 +8,18 @@ class BaseModel(models.Model):
class Meta: class Meta:
abstract = True abstract = True
class Program(BaseModel): class Program(BaseModel):
isBA = models.BooleanField() # major or minor or gened
# geneds are different if BA or BS programType = models.CharField()
# is BA, there are these geneds, if BA, those
degreeType = models.CharField()
# unless they're in the honors program
# and then there are separate geneds
honors = models.BooleanField()
class Meta: class Meta:
ordering = ('name',) ordering = ('name',)
...@@ -22,21 +28,24 @@ class Program(BaseModel): ...@@ -22,21 +28,24 @@ class Program(BaseModel):
class Course(BaseModel): class Course(BaseModel):
department = models.CharField(max_length = 5) # ordering
prerequisites = models.ManyToManyField()
corequisites = models.ManyToManyField()
# basic course information
department = models.CharField(max_length = 150)
departmentAbbr = models.CharField(max_length = 5)
courseNumber = models.CharField(max_length = 3) courseNumber = models.CharField(max_length = 3)
# available next semester? # available next semester?
# CRN # CRN
# section number # section number
# professor
# Course may need Program-specific information # Course may need program-specific information
slug = models.SlugField(max_length = 50) slug = models.SlugField(max_length = 50)
# ordering
prerequisites = models.ManyToManyField()
corequisites = models.ManyToManyField()
# default sorting order in admin # default sorting order in admin
class Meta: class Meta:
ordering = ('name',) ordering = ('name',)
......
...@@ -6,8 +6,6 @@ PROGRAM REQUIREMENTS ...@@ -6,8 +6,6 @@ PROGRAM REQUIREMENTS
CS112(prereq=[],coreq=[CS101,MATH113]) CS112(prereq=[],coreq=[CS101,MATH113])
edge case-- course is only required or available if a certain major is selected
# user enters courses they have taken # user enters courses they have taken
allCourses = [Every, Damn, Course] allCourses = [Every, Damn, Course]
coursesTaken = [Courses, Student, Already, Has, Completed] coursesTaken = [Courses, Student, Already, Has, Completed]
...@@ -51,6 +49,10 @@ nextCourses is all of the courses it is possible for you to take next ...@@ -51,6 +49,10 @@ nextCourses is all of the courses it is possible for you to take next
GEN ED REQUIREMENTS GEN ED REQUIREMENTS
############################################# #############################################
# I don't think even from a UX perspective that anyone would ever want to see all
# of the geneds that they could concievably take a subseqent semester-- there would
# be like eleventy billion of then
# checks if you've taken a gened for a specific set of geneds (say, philosophy) # checks if you've taken a gened for a specific set of geneds (say, philosophy)
def genedCheck(coursesTaken, genEdCourses): def genedCheck(coursesTaken, genEdCourses):
diff coursesTaken, genEdCourses diff coursesTaken, genEdCourses
...@@ -63,12 +65,24 @@ def genedCheck(coursesTaken, genEdCourses): ...@@ -63,12 +65,24 @@ def genedCheck(coursesTaken, genEdCourses):
# users are able to select which courses they *want* to take for gen eds # users are able to select which courses they *want* to take for gen eds
# then pass the allCourses through allPrereqCoreq? NOT COOL # then pass the allCourses through allPrereqCoreq? NOT COOL
gen eds are also different depending on liberal arts or not BEYOND PREREQ COREQ
#############################################
"Through 200 level"
"At least 12 credits of xxx"
"One of "these" and two of "those""
"electives"
"take two sequences of"
OTHER THOUGHTS OTHER THOUGHTS
############################################# #############################################
NO WAY TO CHECK ACCURACY OF USER INPUT NO WAY TO CHECK ACCURACY OF USER INPUT
this is important for modifying trajectories-- see below
once a user has selected the courses they want to take for the subsequent semester, once a user has selected the courses they want to take for the subsequent semester,
this is saved as a trajectory this is saved as a trajectory
...@@ -87,3 +101,14 @@ with other students... --will need to implement later ...@@ -87,3 +101,14 @@ with other students... --will need to implement later
should be able to point out "by permission of instructor" should be able to point out "by permission of instructor"
also, what if the user input is wrong? answer: this system just assumes that it's right also, what if the user input is wrong? answer: this system just assumes that it's right
needs to limit the number of programs that can be selected-- there already is one, implicitly
from a BA or BS selection, and then Honors?
UX
#############################################
User arrives on homepage, selects program, (Honors College?) and is prompted to select
already-completed courses.
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