Skip to content

Admin CSV Import #66

Description

@sean-dickinson

What

  • Add a CSV import option to allow bulk creations of the entities in a school

Context

  • This CSV import would only be run when there aren't already existing entities in the school for this year; it does not need to handle merging with intitial data.
  • The import should provide a template to download with the necessary columns
  • The import should be able to create classrooms, teachers, students all at once

AC

  • An admin can download a CSV template from the school's page with the required columns for classrooms, teachers, and students
  • An admin can upload a completed CSV for a school to bulk-create its classrooms, teachers, and students in a single import
  • The import option is only available when the school has no existing classrooms, teachers, or students — if the school already has data, the import is not offered
  • Each classroom row includes at least one program/level so it satisfies the existing "at least one program enrolled" requirement
  • Each student row requires first name, last name, and grade level (gender and email are optional), and associates the student with the classroom and school from their row
  • If any row in the CSV fails validation (missing required field, unrecognized program, etc.), the entire import is rejected as a single transaction — no classrooms, teachers, or students are created — and the admin sees which row(s) and column(s) failed
  • On a fully valid CSV, all classrooms, teachers, and students are created together, with students correctly linked to their classroom

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions