[docs]classCommand(BaseCommand):help="Import groups from CSV"defhandle(self,*args,**options):mappings={}withopen("groups_name.csv",encoding="utf-8")asnamesopen:names=csv.reader(namesopen)forgid,gname,_innames:gname=gname.replace("eighth_","")gexist=Group.objects.filter(name=gname)ifgexist.count()==1:mappings[gid]=gexist[0]else:ngrp=Group.objects.create(name=gname)self.stdout.write(f"Created group {gname} with new id {ngrp.id}, old id {gid}")mappings[gid]=ngrpself.stdout.write(str(mappings))withopen("groups_static.csv",encoding="utf-8")asstaticopen:static=csv.reader(staticopen)foruid,gidinstatic:try:usrobj=get_user_model().objects.get(id=uid)exceptget_user_model().DoesNotExist:self.stdout.write(f"UID {uid} doesn't exist, for adding to group {gid}")else:grp=mappings[gid]usrobj.groups.add(grp)usrobj.save()self.stdout.write("Done.")