def load_class_from_disk(class_name: str): """ Load class data from a class data ('.cld') file, return Class object. :param class_name: str :return: Class object """ class_data_filename = class_name + CLASSLIST_DATA_FILE_TYPE classlist_data_path = CLASSLIST_DATA_PATH.joinpath(class_name, class_data_filename) loaded_class = Class.from_file(classlist_data_path) return loaded_class
def load_class(self, class_id: str) -> Class: """ Load a class from the database. Load class data from a class data ('.cld') file, return Class object. :param class_id: str - the class' name :return: Class object """ class_data_filename = class_id + self.class_data_file_type classlist_data_path = self.class_data_path.joinpath(class_id, class_data_filename) loaded_class = Class.from_file(classlist_data_path) # Append ids loaded_class.id = loaded_class.name # Student id not added: student cannot be found in the db by name alone. for student in loaded_class.students: student.id = student.name return loaded_class