Example #1
0
def row_to_pupil(row):
    urn = row.get('KS4_URN')
    for key in SCHOOL_FIELD_MAP.keys():
        del row[key]

    kwargs = {}
    for _type in (int, bool, float, str):
        for field_name in PUPIL_FIELD_MAP.get(_type):
            kwargs[field_name] = convert(_type, row[field_name], field_name)
    kwargs['school'] = get_school(urn)

    return Pupil(**kwargs)
Example #2
0
def row_to_pupil(row):
    urn = row.get("KS4_URN")
    for key in SCHOOL_FIELD_MAP.keys():
        del row[key]

    kwargs = {}
    for _type in (int, bool, float, str):
        for field_name in PUPIL_FIELD_MAP.get(_type):
            kwargs[field_name] = convert(_type, row[field_name], field_name)
    kwargs["school"] = get_school(urn)

    return Pupil(**kwargs)
Example #3
0
    def handle(self, *args, **options):
        seen = set()

        with open('rawdata/Appathon3_KS4_1011.txt', 'r') as f:
            reader = csv.DictReader(f, delimiter='\t')
            for row in reader:

                kwargs = {attr_name: row.get(code)
                        for code, attr_name in SCHOOL_FIELD_MAP.items()}

                if kwargs['urn'] in seen:
                    continue
                else:
                    seen.add(kwargs['urn'])

                kwargs['postcode'] = get_postcode(kwargs['postcode'])
                School.objects.create(**kwargs)