From 3fd16b483395eef46798b4255304ca992072fc1e Mon Sep 17 00:00:00 2001 From: Lucas Date: Sun, 9 Jun 2024 14:55:25 -0700 Subject: [PATCH] initial commit --- ClassSearch/__init__.py | 0 .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 199 bytes .../__pycache__/settings.cpython-310.pyc | Bin 0 -> 2367 bytes ClassSearch/__pycache__/urls.cpython-310.pyc | Bin 0 -> 994 bytes ClassSearch/__pycache__/wsgi.cpython-310.pyc | Bin 0 -> 610 bytes ClassSearch/asgi.py | 16 +++ ClassSearch/settings.py | 128 ++++++++++++++++++ ClassSearch/urls.py | 22 +++ ClassSearch/wsgi.py | 16 +++ api/__init__.py | 0 api/__pycache__/__init__.cpython-310.pyc | Bin 0 -> 191 bytes api/__pycache__/admin.cpython-310.pyc | Bin 0 -> 232 bytes api/__pycache__/apps.cpython-310.pyc | Bin 0 -> 464 bytes api/__pycache__/models.cpython-310.pyc | Bin 0 -> 229 bytes api/admin.py | 3 + api/apps.py | 6 + api/migrations/__init__.py | 0 .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 202 bytes api/models.py | 3 + api/tests.py | 3 + api/views.py | 3 + db.sqlite3 | Bin 0 -> 139264 bytes manage.py | 22 +++ student/__init__.py | 0 student/__pycache__/__init__.cpython-310.pyc | Bin 0 -> 195 bytes student/__pycache__/admin.cpython-310.pyc | Bin 0 -> 309 bytes student/__pycache__/apps.cpython-310.pyc | Bin 0 -> 476 bytes student/__pycache__/models.cpython-310.pyc | Bin 0 -> 760 bytes student/admin.py | 5 + student/apps.py | 6 + student/migrations/0001_initial.py | 26 ++++ student/migrations/__init__.py | 0 .../__pycache__/0001_initial.cpython-310.pyc | Bin 0 -> 982 bytes .../0002_student_student_id.cpython-310.pyc | Bin 0 -> 658 bytes ..._remove_student_student_id.cpython-310.pyc | Bin 0 -> 585 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 0 -> 206 bytes student/models.py | 11 ++ student/tests.py | 3 + student/views.py | 3 + 39 files changed, 276 insertions(+) create mode 100644 ClassSearch/__init__.py create mode 100644 ClassSearch/__pycache__/__init__.cpython-310.pyc create mode 100644 ClassSearch/__pycache__/settings.cpython-310.pyc create mode 100644 ClassSearch/__pycache__/urls.cpython-310.pyc create mode 100644 ClassSearch/__pycache__/wsgi.cpython-310.pyc create mode 100644 ClassSearch/asgi.py create mode 100644 ClassSearch/settings.py create mode 100644 ClassSearch/urls.py create mode 100644 ClassSearch/wsgi.py create mode 100644 api/__init__.py create mode 100644 api/__pycache__/__init__.cpython-310.pyc create mode 100644 api/__pycache__/admin.cpython-310.pyc create mode 100644 api/__pycache__/apps.cpython-310.pyc create mode 100644 api/__pycache__/models.cpython-310.pyc create mode 100644 api/admin.py create mode 100644 api/apps.py create mode 100644 api/migrations/__init__.py create mode 100644 api/migrations/__pycache__/__init__.cpython-310.pyc create mode 100644 api/models.py create mode 100644 api/tests.py create mode 100644 api/views.py create mode 100644 db.sqlite3 create mode 100755 manage.py create mode 100644 student/__init__.py create mode 100644 student/__pycache__/__init__.cpython-310.pyc create mode 100644 student/__pycache__/admin.cpython-310.pyc create mode 100644 student/__pycache__/apps.cpython-310.pyc create mode 100644 student/__pycache__/models.cpython-310.pyc create mode 100644 student/admin.py create mode 100644 student/apps.py create mode 100644 student/migrations/0001_initial.py create mode 100644 student/migrations/__init__.py create mode 100644 student/migrations/__pycache__/0001_initial.cpython-310.pyc create mode 100644 student/migrations/__pycache__/0002_student_student_id.cpython-310.pyc create mode 100644 student/migrations/__pycache__/0003_remove_student_student_id.cpython-310.pyc create mode 100644 student/migrations/__pycache__/__init__.cpython-310.pyc create mode 100644 student/models.py create mode 100644 student/tests.py create mode 100644 student/views.py diff --git a/ClassSearch/__init__.py b/ClassSearch/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/ClassSearch/__pycache__/__init__.cpython-310.pyc b/ClassSearch/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d4bac21bdc9a101a5d431f50f93a1f19efe03807 GIT binary patch literal 199 zcmd1j<>g`k0-0IKX(0MBh(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o10NKO;XkRX?XR zIk8yZB|o_|H#M)MSl>B6B~?E>HOVElEHx*;03@jI>*cKAoRe5wtPq@#p!73Y literal 0 HcmV?d00001 diff --git a/ClassSearch/__pycache__/settings.cpython-310.pyc b/ClassSearch/__pycache__/settings.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8bf693bfec2e2c51592a517d281b5eecc6034125 GIT binary patch literal 2367 zcmb7GOK;mo5GH9_k`>Ew?7W(^0E;3>)YfDkPSO@l8d{cDDtQ}_Hh(}7X=y) zH2~CD6cdkXM?q_2cs9gJKlOdZCzL5s|725ch`_4NZ1K1n}uhjBl= zcM#Dv;@-J+->NQT7soKF7lkY#yXuJ4Y;|@u1&`Nf7IPCEGIkhanq8R@QcNk(d|D8I zz#V|awOI=W2jk_(LHSaGDRcUX8{mT|dCBM8nD8QHDFTPpVzxH14G2O$K5!GPj#wb< zP&IQpVA494W$Ux9Cc&vw_U3qP%Bp(W3FJW#g=%ed`wvx`^wk;+F9<%EQhhiRiwo3F z$DzYBY?64RG@UY>-NX@*)5fhaxl>jT-m?jxcrW){?;awpDff=<~jPZgq? zCO*xy2@=CW>_aW8y8wYhbW|&9eN>j#L`?b0C_%nw4pfl`fkg?e%Gs@1nA2J+!n^4p z`}7Q&34R4N#j?*Py2ojpv-%$7obBx1jPfy)?=d)%Rb^h>&}+|)cAd-h#UEh-4hP!E1xiYFDt|1WL}kc!Dw$a z+6I@~ddo;EQ2*J}nczqH6GPL4LO~An7=lLb)E>o&&hny888%5kd^azP7h{bm$sV5- zsYOB(q(Kvh12#Od|K_ar<8tXvVmtwOa#nzL8sLO@rxE6HxRz2r*RyIFw1>QbXxT>- zSYR@U5ca9MK?YD((I&w@YFDrDqT@i5cN|`fp_Te%H<5r^UUHng{p9P=e0 zC1kv`p_@j2+PrKUwQa+4o*Uos`MR;u+u{|y+3f5Xb?0fvv`oI#Xqy%+!2+a+$;+)q zz1}o-^lgJLZg)DC)7x&=I_*uqU>U7$Q@0G0FYlOJja>A72zU)6io zQ>Uw&=1yn3?!3^O4G?x92`f##z17pV45!wq8vxj78IIk7lqvNf;KrRV+Psj@EE^)X z0J)ZX=PPw%Q|~n`2ar3?X2WRKe-@G(z`|(wb59#a0oMG~bE#I3JUD=mQLP4iYCCwh zj`y)2#rdMvdR801wUx&TV=b558&Wi8mYt!5|;`P&}GFU;J|{Adg;3Mv`vZa$aWT%Bm4z_ zz%S*>iC^HdjMG#qNJwBQ*4Uc7_vVd9A05R3u3KOE^12fQ-~C~Kb@A{BKYNUu2xfr@ zMW+a5XVwXQ+%38?nnhs%k%*wP>23O7I;(JYAbRIP+Gn2;G=BT~1>ssP^HpV-%e5j) zZOF7>)}8}1d`(KDH^5yM$8Xj^E-F)$%sDX1UXUWUju>4zumq7TahhD_@WE!}6k((` zKyrnMa*JISz$_38Fo_ASwR5GNP%1RHnbZkz8b@CEEuh`(a7 z>rs-7+q%|T!k8!~;X&f#B#j%hZZEJfv4{FM722)Acp+J%cqiu>V*QUApPw;1_aLM6 z4@GB+7nR7>3QcJEd}+SRJAcj^V+cyY_V`>FrDWM!IoaB^ZAaz}--&E<$Bilftaef8 z6-5JgOo_i}aFaBRf8gT{(y;C^A#;U6N> literal 0 HcmV?d00001 diff --git a/ClassSearch/__pycache__/wsgi.cpython-310.pyc b/ClassSearch/__pycache__/wsgi.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2bb6c793fba8c701c4e532b46c1f0a497506b525 GIT binary patch literal 610 zcmY*X!EO^V5cO`-rYsb3s5o)(H4?0Q;ersNBqd5k)58{3%4Or)vl|DmXSH@x+AANx zof91SC3ED&FL1(}fV5ch*yGX6do#~?c$ko|o_rC-=ZKJ>tXtxvNnC4wt$}h&IjvBxH9XU>0Zli&QQMH=6-c^R@VeGY zaHr5L7NOqTfK*`vRG9!;Z37fdD6T9ml!m9&0whc4YWspQiNdCG#Z8I-I0>v681_6p zW=p(r$RyMnZ!0j4-PlsGW7&fo8# zekV;U=+^u$0`m%(UJGv77{$6JZ`lYXuq(J8x1+>*+tK;iXr~PQE6p1&K7f(THiC5s f|95YBrS+{pc)1hjRro=~w)lN=aPL95Iw)T literal 0 HcmV?d00001 diff --git a/ClassSearch/asgi.py b/ClassSearch/asgi.py new file mode 100644 index 0000000..3859492 --- /dev/null +++ b/ClassSearch/asgi.py @@ -0,0 +1,16 @@ +""" +ASGI config for ClassSearch project. + +It exposes the ASGI callable as a module-level variable named ``application``. + +For more information on this file, see +https://docs.djangoproject.com/en/5.0/howto/deployment/asgi/ +""" + +import os + +from django.core.asgi import get_asgi_application + +os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'ClassSearch.settings') + +application = get_asgi_application() diff --git a/ClassSearch/settings.py b/ClassSearch/settings.py new file mode 100644 index 0000000..b57d4ff --- /dev/null +++ b/ClassSearch/settings.py @@ -0,0 +1,128 @@ +""" +Django settings for ClassSearch project. + +Generated by 'django-admin startproject' using Django 5.0.6. + +For more information on this file, see +https://docs.djangoproject.com/en/5.0/topics/settings/ + +For the full list of settings and their values, see +https://docs.djangoproject.com/en/5.0/ref/settings/ +""" + +from pathlib import Path + +# Build paths inside the project like this: BASE_DIR / 'subdir'. +BASE_DIR = Path(__file__).resolve().parent.parent + + +# Quick-start development settings - unsuitable for production +# See https://docs.djangoproject.com/en/5.0/howto/deployment/checklist/ + +# SECURITY WARNING: keep the secret key used in production secret! +SECRET_KEY = 'django-insecure-7u==_))7g!4%vsf2450ld9e6%_244win@u#ahpfn3wos-ia1(5' + +# SECURITY WARNING: don't run with debug turned on in production! +DEBUG = True + +ALLOWED_HOSTS = [] + + +# Application definition + +INSTALLED_APPS = [ + 'django.contrib.admin', + 'django.contrib.auth', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.messages', + 'django.contrib.staticfiles', + + 'rest_framework', + + 'api', + 'student', +] + +MIDDLEWARE = [ + 'django.middleware.security.SecurityMiddleware', + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.middleware.common.CommonMiddleware', + 'django.middleware.csrf.CsrfViewMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.contrib.messages.middleware.MessageMiddleware', + 'django.middleware.clickjacking.XFrameOptionsMiddleware', +] + +ROOT_URLCONF = 'ClassSearch.urls' + +TEMPLATES = [ + { + 'BACKEND': 'django.template.backends.django.DjangoTemplates', + 'DIRS': [], + 'APP_DIRS': True, + 'OPTIONS': { + 'context_processors': [ + 'django.template.context_processors.debug', + 'django.template.context_processors.request', + 'django.contrib.auth.context_processors.auth', + 'django.contrib.messages.context_processors.messages', + ], + }, + }, +] + +WSGI_APPLICATION = 'ClassSearch.wsgi.application' + + +# Database +# https://docs.djangoproject.com/en/5.0/ref/settings/#databases + +DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.sqlite3', + 'NAME': BASE_DIR / 'db.sqlite3', + } +} + + +# Password validation +# https://docs.djangoproject.com/en/5.0/ref/settings/#auth-password-validators + +AUTH_PASSWORD_VALIDATORS = [ + { + 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', + }, +] + + +# Internationalization +# https://docs.djangoproject.com/en/5.0/topics/i18n/ + +LANGUAGE_CODE = 'en-us' + +TIME_ZONE = 'UTC' + +USE_I18N = True + +USE_TZ = True + + +# Static files (CSS, JavaScript, Images) +# https://docs.djangoproject.com/en/5.0/howto/static-files/ + +STATIC_URL = 'static/' + +# Default primary key field type +# https://docs.djangoproject.com/en/5.0/ref/settings/#default-auto-field + +DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' diff --git a/ClassSearch/urls.py b/ClassSearch/urls.py new file mode 100644 index 0000000..9d4ff8a --- /dev/null +++ b/ClassSearch/urls.py @@ -0,0 +1,22 @@ +""" +URL configuration for ClassSearch project. + +The `urlpatterns` list routes URLs to views. For more information please see: + https://docs.djangoproject.com/en/5.0/topics/http/urls/ +Examples: +Function views + 1. Add an import: from my_app import views + 2. Add a URL to urlpatterns: path('', views.home, name='home') +Class-based views + 1. Add an import: from other_app.views import Home + 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home') +Including another URLconf + 1. Import the include() function: from django.urls import include, path + 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) +""" +from django.contrib import admin +from django.urls import path + +urlpatterns = [ + path('admin/', admin.site.urls), +] diff --git a/ClassSearch/wsgi.py b/ClassSearch/wsgi.py new file mode 100644 index 0000000..6f2da6e --- /dev/null +++ b/ClassSearch/wsgi.py @@ -0,0 +1,16 @@ +""" +WSGI config for ClassSearch project. + +It exposes the WSGI callable as a module-level variable named ``application``. + +For more information on this file, see +https://docs.djangoproject.com/en/5.0/howto/deployment/wsgi/ +""" + +import os + +from django.core.wsgi import get_wsgi_application + +os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'ClassSearch.settings') + +application = get_wsgi_application() diff --git a/api/__init__.py b/api/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/api/__pycache__/__init__.cpython-310.pyc b/api/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d0e02333c54eb08f7e67f37c71ea16a9e9caff1d GIT binary patch literal 191 zcmd1j<>g`kf@^b=(?IlN5P=LBfgA@QE@lA|DGb33nv8xc8Hzx{2;x_genx(7s(wys za$>Q*OMY@`ZfaghvA%PDN~(T%YLZK8S!zyx0Z35a*UMSKIVZ8WSRptyu_!r1!6`90 zJ2fvwzqlw_A1nb8*H0|S)Q^wP%*!l^kJl@xyv1RYo1apelWGUDyO;?`urL4sc1A%iXp=&)k#+Z}(fx$oMDQ>kzzbQVwekv9ZeruW zn_=d`n`ef@0r7a=`C;bu)tG+--pu{D(32p7N}}kNQX+zk#GSWKNlfb=6Drs1IH*VB z%=FQWxzVM~_qI9kAhzqJrOysdMj^el;td>cXNakFW oA+!7xEf~L`7T_$0cJa%B6*;sYjEh^{pC}_LiBsx3UDF?uFQ#KW)Bpeg literal 0 HcmV?d00001 diff --git a/api/__pycache__/apps.cpython-310.pyc b/api/__pycache__/apps.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..47c45b7705eb6edb63e96ce056f11491b4b697a0 GIT binary patch literal 464 zcmYjNy-ve05VqqKh5jsv6)9_$_yrJZn+hZ(x^zIwfaTgw8*t(fH%PF;#5?c+ybwcH zCSHMwb5e<(bmzP8?z=mmnM{TVGC8z7Y;N6b!)>)SiM-D8&*18>d8isV@n1@f|(y=`UyU zo|hXF%XM5BskDvf`DWJa%w?{$YzeROWi)65#!6l&#@ZocP}peaj~RPxxZY<@q{?`s zcZ>s_WgXvlxldHPD|F`fj&4n%sBQ$ebYVnOsB&j%0>kO8S})X-(x!4Cy}3@pM00Dy zmEyJ7hI1|+R4J*g1?>_&PGL#V%Er}mO<g`kf@^b=(=37XV-N=!FabFZKwK;UBvKes7;_kM8KW2(8B&;n88n$+0!0}# z8E>)W=BK3Q6#Hp1-QrBiO3X{o*Gow%0%=~!P{abHz{IZv{fzwFRQ;UN(daZ$29 jSOOxhpIDHo53yaZpz;=n4Uk=$lWNBZw6qxH009O7xC1+u literal 0 HcmV?d00001 diff --git a/api/admin.py b/api/admin.py new file mode 100644 index 0000000..8c38f3f --- /dev/null +++ b/api/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/api/apps.py b/api/apps.py new file mode 100644 index 0000000..66656fd --- /dev/null +++ b/api/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class ApiConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'api' diff --git a/api/migrations/__init__.py b/api/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/api/migrations/__pycache__/__init__.cpython-310.pyc b/api/migrations/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3435aa9a5a33d41a47fb4bd5f251058b40d353b8 GIT binary patch literal 202 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 BGWY-h literal 0 HcmV?d00001 diff --git a/student/__pycache__/admin.cpython-310.pyc b/student/__pycache__/admin.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..cd589ce6db9ab4af5915ca37efaa261d7b62dbc0 GIT binary patch literal 309 zcmYjLu};G<5VhkZ6x1R4`NiUbQPto2<(=m5K>n8?az~BV1cn)Ind58DnMsVWi4$wV8Ss7jnSuBk z^t5JWb|g0|d7mlcn)b*ic2>vEKpUURyuUPi)o%S#`!%l45EB|sEW!e#G(cj^scy9 m`W0FuF=#n1CSBqbPL7e6hmU@CLvcC_w?ll)3Fd6hufz#*A5zEw literal 0 HcmV?d00001 diff --git a/student/__pycache__/apps.cpython-310.pyc b/student/__pycache__/apps.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..97096834a1bed73c0d69977b36850b76211260ec GIT binary patch literal 476 zcmYjNy-ve05VqqKLVp(26)9_$_yrJZ8w3&(T{<9TvD}=~7MvgA1PNAn0$zZbSIWx7 zE3m*hsYFlm+4tS&&!4ZDOojyG_ajN)asRT#VYpb#a2X#H5TKf5G^UhX6L5gN5nzhG zve*H4MS{UMvPeMNlX+Q2MV{_9iA4^BVll&IrkE6oDGk4?{B27}fUBA1yGq8$o>V4-F zR4N-?3yBgU?KE85`y`c}Mwfopd|PCS>n4$gUlvJ|p&`Q~G{EoF`cge9U6dB&w>Oa= zX=#kVQnE_6{z4`XDhF<=gm;Y|=X;}EmZb^H=ZfKLcEaWelSf?Y(GFV%tR3w?ZMl_W aZCUoe!TvNtto6?OpI+G68Y?&^Q}zeCEqc@d literal 0 HcmV?d00001 diff --git a/student/__pycache__/models.cpython-310.pyc b/student/__pycache__/models.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bd9ad4087d2adcb422443cfcbc5964413e46c596 GIT binary patch literal 760 zcmYjPJCD;q5Z?78c7g*`6jYI@(%3BpLLAP4K)O%_gyd$m@lIZ>?PJ&GaiY6x??2p? z{1bk|wp8~QsF;bPQ%0Ik^YHAZ@ zp7tug@HuP_NrfiA?W>Y!5X@wF$y6wqrYfP|IzHO!6 zUI1~jpjW?{q1t~c+cXtqx+|s4W=+{uIFHS8TtN02mNWPUx;dv{cJ@A>^zqF0tg?QK>G@9=31M3!1l`Wk@Cm~!L{IaQA qvt6dLYd2}XhJKdtjQ*^B{ZTKvgrSBme$lgjNmsT5gami>#QzUPy1)ql literal 0 HcmV?d00001 diff --git a/student/admin.py b/student/admin.py new file mode 100644 index 0000000..21dde3a --- /dev/null +++ b/student/admin.py @@ -0,0 +1,5 @@ +from django.contrib import admin +from .models import Student + +# Register your models here. +admin.site.register(Student) \ No newline at end of file diff --git a/student/apps.py b/student/apps.py new file mode 100644 index 0000000..4cae5ca --- /dev/null +++ b/student/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class StudentConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'student' diff --git a/student/migrations/0001_initial.py b/student/migrations/0001_initial.py new file mode 100644 index 0000000..5ca284c --- /dev/null +++ b/student/migrations/0001_initial.py @@ -0,0 +1,26 @@ +# Generated by Django 5.0.6 on 2024-06-09 21:50 + +import django.db.models.deletion +from django.conf import settings +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ] + + operations = [ + migrations.CreateModel( + name='Student', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('w_number', models.IntegerField()), + ('classes', models.CharField(max_length=200)), + ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + ] diff --git a/student/migrations/__init__.py b/student/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/student/migrations/__pycache__/0001_initial.cpython-310.pyc b/student/migrations/__pycache__/0001_initial.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..79928968c5ea47b6abfb6f29ff477a49da0ae7ff GIT binary patch literal 982 zcmYjPOK;Oa5caO0ah$e5g+xyU4v%wsBysj%u*F`SN7*Muc_jBpRRWNFLn1%(S$+6XvSm&qSeC|y!kii^M ztjb^Hv~sQXKOVhxKaO`lxTC}2?t5X~M1;Uadr+4;sydceBO2ijhnZg{*biD&$z7Px`uev z6xU;uUNhRg>k9KHm_W3z{C<{B8`fJlH|hq}%+}d%Yj33I)qUet)8*Hs!c+k>s72Pu GL-{{TpdWVt literal 0 HcmV?d00001 diff --git a/student/migrations/__pycache__/0002_student_student_id.cpython-310.pyc b/student/migrations/__pycache__/0002_student_student_id.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c08e44c8b5f1691892ff586f3d5e0d679e3169f6 GIT binary patch literal 658 zcmYjP&2AGh5Vm){$!3+J9)NQsB&1y8z!{;^R6!uMmmZMzV!1n$)M0;uy<3SJ620~% zxN+cxeC5O|Afz(hBx*;RvBxu>`R22mqoa(GEMKfvKR9E*gY#GfIVYs!lv900av;!+vQXc(tu9Yx>;t=Vx#vPYJdY&CUaJE~ht6;yOZ|UDL7rGor&*T5TwzH)G literal 0 HcmV?d00001 diff --git a/student/migrations/__pycache__/0003_remove_student_student_id.cpython-310.pyc b/student/migrations/__pycache__/0003_remove_student_student_id.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..23e3118e44cbae63557a2b55f6f47d17ff198cc9 GIT binary patch literal 585 zcmY*XJx{|h5Vf7OlmLPW)`~4lUBQYFq6j3UGSC63iqJsE>u*23ayHqG_UY6T8%^{R2hT=fLPWAMw72{A1{jWg|PZhP=VS89rdDCoU8P=4lk)(M)NISXPC3UM?8P zrM8kJI8;To&z}NI;;qSJ;n7NUI%bDlg9*={`8B}>_rDvns(KZAb{)o1KGH21R2-}P YlFj_)0BqxEF4QsoF3dQkH^r{^1E*l000000 literal 0 HcmV?d00001 diff --git a/student/migrations/__pycache__/__init__.cpython-310.pyc b/student/migrations/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..5263f8efa28040379576055d4e6774a148e449b9 GIT binary patch literal 206 zcmd1j<>g`kg8%cA(?IlN5P=LBfgA@QE@lA|DGb33nv8xc8Hzx{2;x_venx(7s(wys za$>Q*OMY@`ZfaghvA%PDN~(T%YLZK8S!zyx0Z35a*UMSKIVZ8WSRptyu_!r1!6`90 zJ2fvwzqlw_A1nb8*Do$9O#x}h%}g&!EXmBzE7p&X&&