def csv_import(cls, reader): for row in csv.DictReader(reader): teacher_id = row['teacher_id'] student_id = row['student_id'] start_time = make_local_dt(row['date'], row['start_time']) teacher = Teacher.key_for_sis_id(teacher_id) if teacher is None: logging.warn("no such teacher %s" % teacher_id) continue if student_id and Student.query(Student.sis_id == student_id).count == 0: logging.warn("no such student %s" % student_id) continue appointment = cls.query(cls.start_time == start_time, ancestor=teacher).get() if appointment is None: appointment = cls( parent=teacher, student_id=student_id, start_time=start_time, duration=int(row['duration']), location=row['location'], teacher_name=row['teacher_name'], is_active=bool_from_string(row['active']) ) appointment.put() logging.info("inserted appointment: %s" % row) else: appointment.student_id = student_id appointment.start_time = start_time appointment.duration = int(row['duration']) appointment.location = row['location'] appointment.teacher_name = row['teacher_name'] appointment.is_active = bool_from_string(row['active']) appointment.put() logging.info("updated appointment: %s" % row)
def csv_import(cls, reader): for row in csv.DictReader(reader): teacher_id = row['teacher_id'] student_id = row['student_id'] start_time = make_local_dt(row['date'], row['start_time']) teacher = Teacher.key_for_sis_id(teacher_id) if teacher is None: logging.warn("no such teacher %s" % teacher_id) continue if student_id and Student.query( Student.sis_id == student_id).count == 0: logging.warn("no such student %s" % student_id) continue appointment = cls.query(cls.start_time == start_time, ancestor=teacher).get() if appointment is None: appointment = cls(parent=teacher, student_id=student_id, start_time=start_time, duration=int(row['duration']), location=row['location'], teacher_name=row['teacher_name'], is_active=bool_from_string(row['active'])) appointment.put() logging.info("inserted appointment: %s" % row) else: appointment.student_id = student_id appointment.start_time = start_time appointment.duration = int(row['duration']) appointment.location = row['location'] appointment.teacher_name = row['teacher_name'] appointment.is_active = bool_from_string(row['active']) appointment.put() logging.info("updated appointment: %s" % row)
def csv_import(cls, reader): for row in csv.DictReader(reader): parent_access_start = make_local_dt(row['parent_start_date'], row['parent_start_time']) parent_access_end = make_local_dt(row['parent_end_date'], row['parent_end_time']) logging.info('start: %s' % parent_access_start) logging.info('end: %s' % parent_access_end) school = cls.find_by_sis_id(row['sis_id']) if school is None: school = cls(name=row['name'], sis_id=row['sis_id'], parent_access_start=parent_access_start, parent_access_end=parent_access_end) school.put() logging.info("inserted school: %s" % row) else: school.name = row['name'] school.sis_id = row['sis_id'] school.parent_access_start = parent_access_start school.parent_access_end = parent_access_end school.put() logging.info("updated school: %s" % row)
def csv_import(cls, reader): for row in csv.DictReader(reader): parent_access_start = make_local_dt(row['parent_start_date'], row['parent_start_time']) parent_access_end = make_local_dt(row['parent_end_date'], row['parent_end_time']) logging.info('start: %s' % parent_access_start) logging.info('end: %s' % parent_access_end) school = cls.find_by_sis_id(row['sis_id']) if school is None: school = cls( name=row['name'], sis_id=row['sis_id'], parent_access_start=parent_access_start, parent_access_end=parent_access_end ) school.put() logging.info("inserted school: %s" % row) else: school.name = row['name'] school.sis_id = row['sis_id'] school.parent_access_start = parent_access_start school.parent_access_end = parent_access_end school.put() logging.info("updated school: %s" % row)