def create_user(self, username, password=None, active=True, is_student=False, is_teacher=False, is_admin=False, name=None, surname=None, sname=None): if not username: raise ValueError("User must have a username") if not password: raise ValueError("User must have password") user_instance = User() user_instance.username = username user_instance.set_password(password) user_instance.is_active = active user_instance.student = is_student user_instance.teacher = is_teacher user_instance.admin = is_admin if is_admin: user_instance.staff = True user_instance.name = name user_instance.second_name = sname user_instance.surname = surname user_instance.save() return user_instance
for i in doctypes: a = docs.models.doc_type() a.name = i a.stage1 = random.choice(college.models.userprofile.objects.all()) a.stage2 = random.choice(college.models.userprofile.objects.all()) a.stage3 = random.choice(college.models.userprofile.objects.all()) a.stage4 = random.choice(college.models.userprofile.objects.all()) a.save() print '......................................', print 'done' #add dummy docs print 'Docs', for i in range(10): a = docs.models.doc() a.student = random.choice(college.models.student.objects.all()) a.doctype = random.choice(docs.models.doc_type.objects.all()) x = a.doctype.stages() a.stage_count = x.index(random.choice(x)) a.location = x[a.stage_count] a.save() print '......................................', print 'done' print 'Rooms', for i in rooms: a = roombook.models.room() a.name = i a.ac_available = random.choice([True, False]) a.projector_available = random.choice([True, False]) a.save()
a=docs.models.doc_type() a.name=i a.stage1=random.choice(college.models.userprofile.objects.all()) a.stage2=random.choice(college.models.userprofile.objects.all()) a.stage3=random.choice(college.models.userprofile.objects.all()) a.stage4=random.choice(college.models.userprofile.objects.all()) a.save() print '......................................', print 'done' #add dummy docs print 'Docs', for i in range(10): a=docs.models.doc() a.student=random.choice(college.models.student.objects.all()) a.doctype=random.choice(docs.models.doc_type.objects.all()) x=a.doctype.stages() a.stage_count=x.index(random.choice(x)) a.location=x[a.stage_count] a.save() print '......................................', print 'done' print 'Rooms', for i in rooms: a=roombook.models.room() a.name=i a.ac_available=random.choice([True,False]) a.projector_available=random.choice([True,False])
def parse_input_csv(csv_file_wrapper, project_file_wrapper): ''' Takes in raw text and outputs json for group information. Expected format of project_file: Name / Number / PM PennKey / Customer PennKey Expected format of csv_file: Name / Class / PennKey / Major / Team # ''' new_projects = {} new_students = [] data = csv.reader(project_file_wrapper.read().decode(encoding='UTF-8').splitlines()) for row in data: project_number = int(row[1]) username = row[2] + "@upenn.edu" customer_username = row[3] + "@upenn.edu" try: pm_user = User.objects.get(username=username) except: pm_user = User(username=username) try: customer_user = User.objects.get(username=customer_username) except: customer_user = User(username=customer_username) pm_user.save() customer_user.save() try: new_project = Projects.objects.get(number=project_number) except: new_project = Project(name=row[0], number=project_number, pm_user=pm_user, \ client_user=customer_user) new_project.save() # set pm_user and customer_user later new_projects[project_number] = new_project data = csv.reader(csv_file_wrapper.read().decode(encoding='UTF-8').splitlines()) project_mapping = {} for row in data: username = row[2] + "@upenn.edu" try: student = User.objects.get(username=username) except: student = User(username=username) student.first_name = "Not" student.last_name = "Registered" student.save() student.student = Student() student.student.year = row[1] student.student.major = row[3] student.student.save() student.save() # add code here to find if the PM user exists project_number = int(row[4]) new_project = new_projects[project_number] student.student.project = new_project student.student.save() if project_number not in project_mapping: project_mapping[project_number] = [] project_mapping[project_number].append(student) return (new_projects.values(), project_mapping)