forked from TareqMonwer/Django-School-Management
-
Notifications
You must be signed in to change notification settings - Fork 0
/
populate_teachers.py
56 lines (42 loc) · 1.28 KB
/
populate_teachers.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import random
import django
import os
# must be on top of django.setup()
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'config.settings')
django.setup()
from faker import Faker
# must come after django setup()
from teachers.models import Teacher, Designation
fakegen = Faker()
def create_designations():
designations = [
'Instructor', 'Sr. Instructor', 'Jr. Instructor',
'Asst. Instructor', 'Lecturer',
]
for des in designations:
Designation.objects.get_or_create(title=des)
create_designations()
# designations
designations = []
for i in range(1, 6):
des = Designation.objects.get(id=i)
designations.append(des)
def generate_teacher(n=10):
for entry in range(n):
name = fakegen.name()
des = random.choice(designations)
mobile = fakegen.phone_number()
email = fakegen.email()
try:
teacher = Teacher.objects.get_or_create(
name=name,
designation=des,
mobile=mobile,
email=email)
except:
continue
if __name__ == "__main__":
print('Creating Fake Teachers....')
n = int(input('How many teachers do you wanna create?'))
generate_teacher(n)
print('teachers created successfully.')