From e90a923b01a59343225227534f9ae7416fb4412c Mon Sep 17 00:00:00 2001 From: Charispinto <21h16.charis@sjec.ac.in> Date: Fri, 4 Oct 2024 16:11:22 +0530 Subject: [PATCH] homework complete --- myworld/dockerfiles/Dockerfile => Dockerfile | 2 +- docker-compose.yml | 30 ++++++ myworld/db.sqlite3 | Bin 135168 -> 135168 bytes myworld/docker-compose.yml | 29 ------ .../__pycache__/__init__.cpython-310.pyc | Bin 133 -> 141 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 155 bytes .../__pycache__/__init__.cpython-38.pyc | Bin 144 -> 0 bytes .../members/__pycache__/admin.cpython-310.pyc | Bin 536 -> 751 bytes .../members/__pycache__/admin.cpython-312.pyc | Bin 0 -> 598 bytes .../members/__pycache__/admin.cpython-38.pyc | Bin 475 -> 0 bytes .../members/__pycache__/apps.cpython-310.pyc | Bin 357 -> 422 bytes .../members/__pycache__/apps.cpython-312.pyc | Bin 0 -> 463 bytes .../members/__pycache__/apps.cpython-38.pyc | Bin 366 -> 0 bytes .../__pycache__/models.cpython-310.pyc | Bin 767 -> 1170 bytes .../__pycache__/models.cpython-312.pyc | Bin 0 -> 568 bytes .../members/__pycache__/models.cpython-38.pyc | Bin 429 -> 0 bytes .../members/__pycache__/urls.cpython-310.pyc | Bin 361 -> 455 bytes .../members/__pycache__/urls.cpython-312.pyc | Bin 0 -> 337 bytes .../members/__pycache__/urls.cpython-38.pyc | Bin 275 -> 0 bytes .../members/__pycache__/views.cpython-310.pyc | Bin 1601 -> 3441 bytes .../members/__pycache__/views.cpython-312.pyc | Bin 0 -> 532 bytes .../members/__pycache__/views.cpython-38.pyc | Bin 414 -> 0 bytes myworld/members/admin.py | 9 +- myworld/members/apps.py | 1 + myworld/members/migrations/0001_initial.py | 4 +- .../0002_students_delete_members.py | 5 +- myworld/members/migrations/0003_employee.py | 25 +++++ .../__pycache__/0001_initial.cpython-310.pyc | Bin 670 -> 681 bytes .../__pycache__/0001_initial.cpython-312.pyc | Bin 0 -> 944 bytes .../__pycache__/0001_initial.cpython-38.pyc | Bin 679 -> 0 bytes ...02_students_delete_members.cpython-310.pyc | Bin 841 -> 948 bytes .../__pycache__/0003_employee.cpython-310.pyc | Bin 0 -> 831 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 144 -> 152 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 166 bytes .../__pycache__/__init__.cpython-38.pyc | Bin 155 -> 0 bytes myworld/members/models.py | 11 +++ myworld/members/templates/myfirst.html | 2 +- myworld/members/templates/student_list.html | 35 +++++++ myworld/members/urls.py | 2 + myworld/members/views.py | 93 +++++++++++++++--- .../__pycache__/__init__.cpython-310.pyc | Bin 133 -> 141 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 155 bytes .../__pycache__/__init__.cpython-38.pyc | Bin 144 -> 0 bytes .../__pycache__/settings.cpython-310.pyc | Bin 2328 -> 2382 bytes .../__pycache__/settings.cpython-312.pyc | Bin 0 -> 2560 bytes .../__pycache__/settings.cpython-38.pyc | Bin 2318 -> 0 bytes .../myworld/__pycache__/urls.cpython-310.pyc | Bin 322 -> 974 bytes .../myworld/__pycache__/urls.cpython-312.pyc | Bin 0 -> 1093 bytes .../myworld/__pycache__/urls.cpython-38.pyc | Bin 333 -> 0 bytes .../myworld/__pycache__/wsgi.cpython-310.pyc | Bin 536 -> 544 bytes .../myworld/__pycache__/wsgi.cpython-312.pyc | Bin 0 -> 643 bytes .../myworld/__pycache__/wsgi.cpython-38.pyc | Bin 547 -> 0 bytes myworld/myworld/asgi.py | 2 +- myworld/myworld/settings.py | 34 ++++--- myworld/myworld/urls.py | 23 ++++- myworld/myworld/wsgi.py | 2 +- 56 files changed, 239 insertions(+), 70 deletions(-) rename myworld/dockerfiles/Dockerfile => Dockerfile (94%) create mode 100644 docker-compose.yml delete mode 100644 myworld/docker-compose.yml create mode 100644 myworld/members/__pycache__/__init__.cpython-312.pyc delete mode 100644 myworld/members/__pycache__/__init__.cpython-38.pyc create mode 100644 myworld/members/__pycache__/admin.cpython-312.pyc delete mode 100644 myworld/members/__pycache__/admin.cpython-38.pyc create mode 100644 myworld/members/__pycache__/apps.cpython-312.pyc delete mode 100644 myworld/members/__pycache__/apps.cpython-38.pyc create mode 100644 myworld/members/__pycache__/models.cpython-312.pyc delete mode 100644 myworld/members/__pycache__/models.cpython-38.pyc create mode 100644 myworld/members/__pycache__/urls.cpython-312.pyc delete mode 100644 myworld/members/__pycache__/urls.cpython-38.pyc create mode 100644 myworld/members/__pycache__/views.cpython-312.pyc delete mode 100644 myworld/members/__pycache__/views.cpython-38.pyc create mode 100644 myworld/members/migrations/0003_employee.py create mode 100644 myworld/members/migrations/__pycache__/0001_initial.cpython-312.pyc delete mode 100644 myworld/members/migrations/__pycache__/0001_initial.cpython-38.pyc create mode 100644 myworld/members/migrations/__pycache__/0003_employee.cpython-310.pyc create mode 100644 myworld/members/migrations/__pycache__/__init__.cpython-312.pyc delete mode 100644 myworld/members/migrations/__pycache__/__init__.cpython-38.pyc create mode 100644 myworld/members/templates/student_list.html create mode 100644 myworld/myworld/__pycache__/__init__.cpython-312.pyc delete mode 100644 myworld/myworld/__pycache__/__init__.cpython-38.pyc create mode 100644 myworld/myworld/__pycache__/settings.cpython-312.pyc delete mode 100644 myworld/myworld/__pycache__/settings.cpython-38.pyc create mode 100644 myworld/myworld/__pycache__/urls.cpython-312.pyc delete mode 100644 myworld/myworld/__pycache__/urls.cpython-38.pyc create mode 100644 myworld/myworld/__pycache__/wsgi.cpython-312.pyc delete mode 100644 myworld/myworld/__pycache__/wsgi.cpython-38.pyc diff --git a/myworld/dockerfiles/Dockerfile b/Dockerfile similarity index 94% rename from myworld/dockerfiles/Dockerfile rename to Dockerfile index 9517e854..e3f5abb5 100644 --- a/myworld/dockerfiles/Dockerfile +++ b/Dockerfile @@ -7,7 +7,7 @@ RUN apk update && \ # Install requirements RUN pip install --upgrade pip RUN pip install Django psycopg2==2.9.3 -# Create directories +# Create directories RUN mkdir -p /root/workspace/src COPY ./ /root/workspace/site # Switch to project directory diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 00000000..7b2a90fa --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,30 @@ +version: "3" +services: + web_service: + build: + context: ./ + dockerfile: ./Dockerfile + image: workshop1_web + container_name: workshop_web_container + stdin_open: true # docker attach container_id + tty: true + ports: + - "8000:8000" + volumes: + - .:/root/workspace/site + + psql-db: + image: "postgres:14" + container_name: psql-db + environment: + - PGPASSWORD=123456 + - POSTGRES_USER=postgres + - POSTGRES_PASSWORD=123456 + ports: + - "5432:5432" + volumes: + - db:/var/lib/postgresql/data + +volumes: + db: + driver: local diff --git a/myworld/db.sqlite3 b/myworld/db.sqlite3 index bdda49a8c97238319fbc1a1a6ebb385c72f34881..ca74a2b8c586b94ed44e4827bb62277f018043c5 100644 GIT binary patch delta 2751 zcmd6pTWllM8OQzkx=wKH?83Tj;>6wrv|h)~nfo}f-E|!2;{ z`;s_O`_O_!aOvTRBB~bD@~~`HSP1d5t<(x3fhsKzZ6D}Mp{pVgD)eEC+HoN1uHtIT zL#2-9j7H}_-#Op;&-rG4TQ45ldhysZBg3a+VxYsu6og<1|J4WI!M{nu2!0_2{%+F`YtX$p4-}l*IiuAW$H(FO6Ez{0PYU%~ zCR(p1D~C4&c-RXk@aJ(T%LA)8kpP~hkkz~#ST!$4d_Hqzc_|d}Oqoxm#7eamEeeI? zDf5OARoA*Aj3NDE!+5nB*LTKT5zAjg=Ts8$IJV8V8f1H*u6WoO-Z(Ye~v~ zplwiVj1~*DbNHj8M4iDnnF<3mwA5FwcY48(qAWs~V9PBmO_M}Q0a@;Rz2ob*R0QjuVth}c@YR@ZwkCCf)S@gaCd*V3|82?qyO%pk+u`a zj%YKYXJ|A-@eY!rD30p{N5<~fC~k&e9Tdy+PSp9{2-Q#HSj2SR9kHFfYs`ZbyTj_Zbs0G|6`?<5QbQ?L^2) z(nz6_86S2DiGo-}2oX`SDAq(FPa^V21nHy^NleRCvWKJyslM(XfGCRKKqY&)^Uk>G zXnrJ5GaP%}+|Vy66*kzfmr}A)5UW*jy*R4VDlEtLJJXf*dg*}y#klscrlfi}@s)TO zVN@t6*x$$s%?bJ5`_m4?%gXn_u%`^l4ay~%e(AOLIsImv2A!;Z)}^)RrnOp^t`y59 zQe?E65lDue6L zdYyMWPqV#}adI3@u>;bQLI0UdIyHO4TYuIM=@b_2zlXZMr8cN<$cBEeyYX8472W3c zgk0s{iMWa>l&^?vCYC}%lA{pWNMFroi^WQvBhoRp_W{`W_;mG_0_;-vg)gr%ZPL?7QD`I zf_DWg!Oeu1VRLmJW!Q_+mDxg*F63(|A|B)e?uyW=ggor!*jzdt78|omD-E}kab@|1 z6>lQGA~KDp%jv&FZNyfRE&t`En0I!K3$iKKVt#op9iAbo4Pl`*lU`m3tq10!batL~ z*CNr?f_IiplC3O>qK|Jjb7H;X&-z$uJ;Lw@z7l-zGj;GbIELi5Ct%+vx>RYfwe@l_ zkzunM}2p1xb#c?(xk!< z_uF0a358#KKWndFJNpd&`vv%s_S|ueF=vN%6@w4Px^K;asy`GwpwqOEKKz(s?Ee}9 zBB1`p05H(|`D>*n+wMvpJ^CP!n7RTtfxur}fgi&(ep-O83aO0&YY#uZg@qWHRgOa( z!9R_`aj@anWAL0IWCNL4RFmr7fHG>T#~7UaYj8Qf4=y{jU1PLbC6wAZWAFYd4zB{7 z>H*o$!O|nKTVTc?r{Ii468lIc0mxrqyayL=!x;V`1EkK>mm#WP!mo<(ER5oFS@?y7 zaksNDCB+zX5XL{u!DIMmd6>n&&cR2xoC9O`!#tS6d&=|w&|m*x&;WYryZ4EHH>i63 ZQ+Qj??*F2W7PQ=?aB2VZK7MJ-@Gl1r0<{1D delta 2002 zcmai!OKcle6o!4{IE|Y+<0t}y66et-MKp}T zNz$q-3Ze{RmQ+*%selBDR4-UiDuILqf=#=j3s|5EDiE6@qyl0RS}9eGdZjDPx!;^~ z=lpZ@Z(bYRyf*m8*vN5>Ml-GMC(C_x9v?lfv2f>g>JdO5?E(|>XlF#ag6#Z*oEkD= z3y@tv$tjdt#PLOput3P5BqgtnP3&iwilK$TDaf$$n1-_iixF~o9P7boibhfSopH1WBMFwq-hye5EIYD5>^vcY-)r6QyW^q2%ew z`Hcf|q69<<8ftYK)2ua_5rr~@5KRbWp(Z3t7{m@{pd^FBlYKhPb81GtmVZ_PWKn{} zX`s{0%3n{K4}Kq{P?}=5r<#a+KsyI^YbGSVA_~>2uwEWF7_`%adxyEodR;m)tew>F zh4m_5QHOAJcM|t4lTM2R`ST;A+C!t-ox3M3#%}*D@E5YZHel@MGzhmdJ>^C=woU+p zW^2i+A2Uqr^;UzFDrT}+qMA=)BsGJxYFlu|8TVwFd^_FoG_p}QZbMfK#ZYV}RLpo* z#8S$WJ0qJ9kfFocG5zE8?acw>z)j8Y_lBEl zXEzKR7mxPoyq7pDLsc^M8lMpuUg+ddl+L%(4YHOdV7*mr)S!hw*9sRLRbR7U_1pM_ zuv{uvqF5^k>uE14CRxI2Z%aWza=LgIXBTtX;94gtc=9zV2{U1uD|^H76_<;`xn$AC zrZc3Y5s8o+Yayyq@fO);n9o@2Eiy&&!E(Am`0R~ntCF(`UPoTEg@QgV5X73bbi8CQ zl$K7`kk{Q*8<$0Tdq*1SMvd`#T#uzM>3$<0-&ZM=k~ zGApi)RDz{xPb(_a*IRiy67o5zddFXm5_s6-Eue0^xt58gAYKkj8ImhYLDospjY6#6 zVH)*B9`jaXiEKn{a&Cv+>1T=#x2?Erg^qIp(bkCa%fU>n<)ysgKsu0IZMA)#8n)uJ zm0S%6V-K!22Dw5hQ#rcI`R%jQ>@L(H~}W)k;9|PTn_vUX5=Zu znrt2(RKz@}fMd!Jd4S21VNjkO_9=n@Y+y?HPyla&N#%3_+yE2GF9k3U%!;W9IOVI7 zdXOuE)5?P)_(}Pw2u^kHmw=hO-oI(Q-hW2jw^Z}`9ejyUdp>+{i2KZ1tN#Cg-n*N| Fe*vMcBsTy6 diff --git a/myworld/docker-compose.yml b/myworld/docker-compose.yml deleted file mode 100644 index 0d37737e..00000000 --- a/myworld/docker-compose.yml +++ /dev/null @@ -1,29 +0,0 @@ -version: "3" -services: - web_service: - build: - context: ./ - dockerfile: ./dockerfiles/Dockerfile - image: workshop1_web - container_name: workshop_web_container - stdin_open: true # docker attach container_id - tty: true - ports: - - "8000:8000" - volumes: - - .:/root/workspace/site - - psql-db: - image: 'postgres:14' - container_name: psql-db - environment: - - PGPASSWORD=123456 - - POSTGRES_USER=postgres - - POSTGRES_PASSWORD=123456 - ports: - - '5446:5432' - volumes: - - db:/var/lib/postgresql/data -volumes: - db: - driver: local \ No newline at end of file diff --git a/myworld/members/__pycache__/__init__.cpython-310.pyc b/myworld/members/__pycache__/__init__.cpython-310.pyc index b8594c8c204132eebdb23c5ce01272a188d280ce..9b07247964fdf02cdf228f1340a9496d5fc3df16 100644 GIT binary patch delta 53 zcmZo=>}BN1=jG*M00No3|7jC>tYr=Ki}LeJ^vm;$vWp86lT-DJGfPtSb1Q)YIVlrk FGy#af5byv1 delta 45 ycmeBWY-Qxh=jG*M0D{H<<>ZMx)}k8vMfv$9`sMjW*~JBk$*KCqnI)+cQ#1kjpA8cL diff --git a/myworld/members/__pycache__/__init__.cpython-312.pyc b/myworld/members/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..33e50c4955f3068523dcf6ded656c90b1c69db02 GIT binary patch literal 155 zcmX@j%ge<81TuO5(?IlN5P=Rpvj9b=GgLBYGWxA#C}INgK7-W!veFMNPAw|d&&sbX z&&*3o&CAOy)-TP=OwKPYD$zC4&#f%aFUm>L&rQuu0;!9S&&g`kg2n*lWDxxrL?8o3AjbiSi&=m~3PUi1CZpd K0~z-jh#3GBMj;#k diff --git a/myworld/members/__pycache__/admin.cpython-310.pyc b/myworld/members/__pycache__/admin.cpython-310.pyc index dc7d7341e0caa2a7caa1864f3a68ffc44fb36800..ab3a1698a7bb31f030b4d5855d75a77d705dc2c3 100644 GIT binary patch literal 751 zcmZ`%J(JTg5S9ELUlN!MA45y$g7Y6>m}BN{s7Q028>3{E!$Gpc${EHr{17OwyWgXh z>gwxgVAq#0SAb@;)_YpNT|KFr&2mBG<<0NSA`s#ygNGv`a7NR8pa24-5mr`G3J4%H zfeowBMpY!mI{^{I-vq>3ZsV_El@OCaN=$lS_?vy7=ujs=0x1qC(kUazE=4i9r7EJ3 zK2~6x_Es_qe0JIILASm0*@fMiZqRzoi4O;-p3%H}LP3j4f~W$JRR}>9K}h0}pPz3J zN^e=dNPNC&(Dikzto9S5j>}X5pmxrmU}sF-?(IsWPi(hpjP}V2RlELJNSslv<#p_{ zdX%VZpVzhRU~e?7r*-{#uMCSbG7ZT?<90?3{$xa(#`GGm1#;74`1Pv9uItM$9e#2< zwbrF;dR^Lq2m__n+=(kkdro%)rt~A<(Op6z6Oqj1$o3J0Hq-YM)Y-9i!I3*HJESmK;B|8{@Bddl2$3Zvk&BU%=DHHWQgue#H9 z*Y?<~ke(dXAjh$S7pM2;?{baq+~i2TO2mI`6;D2sdgZD7IOdz9tIvpAtoVK0Bj9C{r~^~ diff --git a/myworld/members/__pycache__/admin.cpython-312.pyc b/myworld/members/__pycache__/admin.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..88c0179cb6acc16f336a93410448b7a484fbdbc4 GIT binary patch literal 598 zcmYLGziSjh6n<}a?`~Z$G33C;MgoEhCJS0v7zC>nnqXtI&9HYf33JTO#+g0BHbNj^ zn=bwfl0U^Ng`5nevPu`YRB3eHZjO7!d*Aooyr1)HZ7l&W@65l$xwn6bET#7V7T-L$ z01g}#l$av|4|u48GR#AS0QP`KXTW;`r|~j*WiP`H=M*2V{7W=_vP3H@LeaYnI*!ov z)4>gq6kV_2rPMdrvBAD5$HLf2_q5X#BUx;CbpZl$jIP&ufW7er&Ta<2e zAMbYiy*E!irTf`8UfqU>cn#05;n`h;xPAU&zPWX^xpfDg-1Y(c-;>j14x=j=o$vkl K_#0lfMgIc_ag5vm literal 0 HcmV?d00001 diff --git a/myworld/members/__pycache__/admin.cpython-38.pyc b/myworld/members/__pycache__/admin.cpython-38.pyc deleted file mode 100644 index f30fa8e9cf13b80e96ce2750e05a6b832cfcfc96..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 475 zcmYjNy-ve05cW@!hLR%0D==kgB<2d0iK!J*#gfHJd!|jXlVGPpo#8=XzhN3y@6l*a-pOgxom`S~q#;$zz*nEA8$DSid zl2af#1DbPS*p0i>J5<%xjc=ARck)mg+g62^E>=Y!&C|feLinT*ZYYGVVW)hY2=TNl z)L$i0rELY2wo%3YgO~(g?BM4r+tgZSy0qDIZ658WZZfNjMqzG`83mc{=g+#W#?9V@ zsP^Ax8A41uK2PKP47NqJuE(poYE8K`zU(3#Nh)i+zzt`fbQ^Ul7ud4JeT-b=fYSUA W)<+{RiYNV6*Z#w7gpkmLUGQI0Lv_ml diff --git a/myworld/members/__pycache__/apps.cpython-310.pyc b/myworld/members/__pycache__/apps.cpython-310.pyc index 22d78967c82358a0ba4919944bf6492e9d68b327..15467d04811cd6be47cd1950d4de4c8bad3f6b8b 100644 GIT binary patch delta 236 zcmaFLw2YZIpO=@50SILB{-;fv$eSM`0_3DJL@}l?L@}i>Mlq)_MX{tX2Qz50+~W03 z%}q)zDt6A#OUq2Jl1<4<%uCPLOG(np%}+_qDb{n!Om{3T$#=_4%}Ke%o(oa!r^z~T zt!k=JN@`kSX--LeB2Yzq8dwQSUSe+QN`@kk3&6xL9sQ#G{1W~0{G#mQg2d!h{o>4$ zRQ=papg>NFKGa10#Daoiy@JXjW}rS6ATDMD5*!RHjFTl9l?33XLCocz?9C_z02?zy A%>V!Z delta 171 zcmZ3+{FI3|pO=@50SFocl#?ST^5z=~06D1)QH&`JQA{a}QOqe!!3>(rw|IS1bCXhw zikREue7({R|Opany5`dclF^y|-52F+SQnf3J diff --git a/myworld/members/__pycache__/apps.cpython-312.pyc b/myworld/members/__pycache__/apps.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e8f3fa0cca2c7ad273118b90948d06864ef835ba GIT binary patch literal 463 zcmXv~ze~eF6n>YaTH8iMsvzj#B4jWD2k9U}RTKxixnw!g-le2m?qbqV;wJPD5SRW9 z;-BK;SOQK?ZbEhGqIXGr!+YO%@7KNW)ifI*ZI}Q0PcnWe@^7^YEDj`?0Re&-gvdn* zG`IqyO@ZhXz363~t7V2&`&7h2`C2!M&IR{_;h;>H9#v$~mS6@HTtvXt2y%6zxkjd2 zMsD8FuutQpY`@5_k$g2Qt9w>0uVc);kYb!SFqXwB zQ@DlkUFxwavq`A$rEH8nIRg8|3`6CfVWB>^Ja%pqx!oCwY!dK3BvWW>rdK7&bUny5lzJezw zy9GNi-^@4v$$edqf#m)6bn!s;JCl7WiOfjj2>}8!1D3Un!8Krk{1cFC_QBf%%R6We zey9o>mPVJ}U%BpSy`pmwk=idMPsrg(5N5d^@}I*G{@8+bs z3il@4o6C=xumnG1f=lR|A57m8#Wt(ilb1gr&o*EY-0UuFHc#g;_Z{mq0ZViu+blO) zXRw|d+U@PBbQlc6SZXHf8*K6}z=wl(jlaL|3DmME5rU4oZ=G;XbQ@$nxq@wS7S zzM6cwJ?)pEQStTY(RpCfrUwo0|3)lMpFO) diff --git a/myworld/members/__pycache__/models.cpython-312.pyc b/myworld/members/__pycache__/models.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6f163938605a989737779a19c0c252af725fa1e5 GIT binary patch literal 568 zcma)&F-rq66vtogT5XGW3SAs*7eTzi9yp1Ji=dNkirf;eO-OTO`Y85ynM_xD0;6pK4?ut* z20n5S0u2s;Xe}T*MfKFQV77O3#f~1Qtn^SO7E0#)kWdy?W;%e05Jsos^Z_V1h=8MM zK=pd&uTU{TFIopFcGCY+&BeNvO6Cu#U#2`7{)l4XCFi?Wn9-otI6JcDlMKdz>r;%A z9LBYvR$+$LJJ0Fv0d$(#jaU=TJ4#o zYinQ>+9!RZ&@~EA`JS_oVV_Sj_ literal 0 HcmV?d00001 diff --git a/myworld/members/__pycache__/models.cpython-38.pyc b/myworld/members/__pycache__/models.cpython-38.pyc deleted file mode 100644 index 229337de1da601bd1abe1c3dc396241ec3d397b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 429 zcmYjNy-ve05VqsAO+xw-z|y4|SP`m(1XH_IELkkKXPO2(DRwL93@cB-6CmEmYp1>f z3!LMDo^}17$`&^wCtVWJ}?{^yTMfIg*5i~ zi#<3y)8dsY*{rtJY&38Q=Z(;kbC+?BYj?`yob%_MP$6R?>~!gECCuGgDk#&(wXs{D zbcqrHeGzkpWu5uCDymk?La%M{(wZk*wVT3fu~8V?V?;rr!&OCKI^OJ!C+F4rZ%b%S oyT}YFq)>}y)sA5iPU%hk_jKw1r2*yG>yqn0?xeV44PaMtKzk*_=-}COY~E73v%)+Q&aV;#8CM*nRz8vnJIRDnj91F z=yON$xI$HiP3B;fmDSNN%Fi#+FV8Q^E-pw+PSr2YEJ@YRtpp0>q)fJAlot^II*NyZ Ohmnt&j}Zbneggmis5S@y delta 146 zcmX@k{E|sKpO=@50SK-tsU$NoGB7*_agYHUkmCTv#as93+WD5qGjpz;=n fO>TZlX-=vg&?<&v9w5QPz{AML%*V*b$nh5db*mtz diff --git a/myworld/members/__pycache__/urls.cpython-312.pyc b/myworld/members/__pycache__/urls.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..902047693ae873aade3d36691d09cfae3b7c802b GIT binary patch literal 337 zcmYLDJx{|h6nrmE(m*IkureZ{3^Wo06Jlm!>yl0>HYJhmRCYqh$W|ss_zM;M6GoUK zbzxYes9j@Y!|5Xf3xbFQDE0L7YA3Ayhl&@E44dQ(XW6 literal 0 HcmV?d00001 diff --git a/myworld/members/__pycache__/urls.cpython-38.pyc b/myworld/members/__pycache__/urls.cpython-38.pyc deleted file mode 100644 index cad07bfdf138d5e1c4805c003317c2d6b244af34..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 275 zcmYjLOHRWu5S@wRP|=o4u*xP@_Z8v<2nn&tE-<4e#f~GprSuRSge!T=suy6v2F9@I zNb^Q-K5yRRa(M|7U-#F~R_bRa=b?q%O2$TjfY5@&77?f*WecZTg}_K9t8Gb|s&}=) zR@21;)U%V^K#i%Kx?O+5f1+OpKEwn`4>lyShqq+IHi{H~U~?C}ch4_o2*C z38cA9L~F-kj2{rP^*{Jtnch1#ZiwdK!%OV_WTNXPE4`z1EE&h{i9{92P_+ diff --git a/myworld/members/__pycache__/views.cpython-310.pyc b/myworld/members/__pycache__/views.cpython-310.pyc index 319f314123990cb6d54f1578175fc24784d86269..2bf60e4331b7358e800edd65c17b908954c746b3 100644 GIT binary patch literal 3441 zcmbVO&yOQV74GV;ZnxWQk9T(1T}TKM1Z)iK%mP6KDL^E$T0s;OF^GUKrpHyYW7F++ zs><2e@=8eA>q<@VT~411uhdVa5db@ltc`l`xi zGx6{Y{`tkp&u)6&e<;{|LIm%i=+9t;Cs^(ktjCxqd=cb+5%hwB_c&rt@H{M{UgZ2R zuN84Gc7BxCi=>x0zm_+Ow3j+R&YQiaOk^zTB6;RN^h86XPd$-J_G$1b>$SGpnxcia zR@Js6;v=uKbAeTP9cKCOhw||SqrkWEk(mlPHrmDyib-D1q(qnW*SZ}4R_aMP))Y4e zTAlReC$g9rgzZ9_(^B+>9F!_Er9xe#j&zWjt)$kT-`u@r>5v@ZLK^W$pH|GPKLRW$_81U+w|R1>TYQs ze1btLLPu4nL80YZ<|nqM?16T59a&sJ_N z6GBO?6=lXoMR^ST)eeFeH-Xvy$x!A(?-MdZCB<{!;csgN#$=D=#pfV}g0grHtxlxA zPCo4t^$jvKt=cC;Xf6jwdOE=Hi+`i06IuSjZ;pPaUZrNo31X1igR#*-$;?Q+lps@I zB}2$B%`4P}PfBgR4Nu>Kd7JIB$WPe%7rkiL=Iu>PX+X#Cc0s$i@AA>_+oazIzoxl_ zpZ5D7O|zUb)$cFY_1(*tZogioXds2vwDQ_FMJN)GwL$7aTeW*j2LbQ^OC*{D{nL7%+OxJz7(*v6{V)kNPpyG%ssJX0j^` zbp-key6Jrw-$~9MYx&&g5TE5Qda)NT1!&%0C5VuIx&HhO^Q~c4cPgLsXXTUrtb8bj zejP9Z98m*|U>Iq`|D`#}OEt&M3(dJUy(BH_butd}Z;|KpW1aUOP#qmJ4%H=yk-AG2 zYn51o_y#p}$XwZ+v}@l(anf-AdTF?^m2c99!RGEFExJ6fKR__w+d8MQx9B{EF>?GBE#dsX7mV|6;?G*kp@7 z*a)Yh#1ZSH(=nD`VXPzR)!e*=v423(B+EW)u^9QOICyg_C(HS_vO-I^%*wwI%-`S6 ziV4m*=op^ihICFE1a&z>eip%~cJ42NJ`@HqM;yBtYJ)gLTz4^)2XTZradG0}8sdhF z8!nC!r!G!`L(}2VqQew8;I6rW!_Mqa6%H*NjksrG1ME)!_E+q#2c9oEHd?tAo&-zRgAjN5+hFeLt{UyxaEI_J@;tmu#< z3DtBq;#lPIUffLUuD;W@sTgJBN9BRLnkl+e(ai%y)9(7{GG`lAr&D7lj@|av&0zM0tre>JyjV_AlYTH$-J}s3QOpSK;PxVu@xl`M%@464N@!QMm!OsEh VQcqH^&C==@vn1GM$s4!We*p@$-$MWZ delta 907 zcmZ`&L2J}N6rM>YlWaD-t*uQ}THH!2Y=u@71VMVSQt(ifio&Xg?au6)HM`l)%&IL} zD%7I|OTbeRJ@!|KH}Mz9T)egi1;LXSeUlZ@gBjkJ_r7`a<-M2W+o|_KIVqKV1eczj zZM<;z%2W9M-no-aj2L1hCLO2d3*2Qc^LDKj#0t!Rj+oE! zj=h6xJ}a)FYH(z`I`iys#+&jFOoyCuCdB7XH3MO9zw9tTTO{A76 zDb&VoE43Kj#RJkUq_zlub2hUKcNcZX2?EaEoX5y4MY69rybdBxN|w=sa6nVqcEHTt z1@piPU_NvA>A+2$H^tO_i!s_*RD^k{!^pk`9noD2y705mx>Sx{Liq<+l%c)@n)zgA zy9lnPon$?Vxd=?)%6_B4r9AooQ8f@GCzJIyZz!p0Gl~@#I#^D)Tus!qr;${`fgCYr zVBElQ14da)7|3O5z1QPiR`oQIJZ@@N@Qpq%N>y`25_c03WbdrWX)yvPYOWlPR})rO z^#deM1N&nx`)q|PytB@QTzm{~LoW0-wcX;%JWI|45Nu(BN5RUNJS*c6TR(~AVPX;B zhKv3PyfK_zus?18zvdE%ZH?FCxYCSx%w)xs8wt*;Rz5!Mc3?*J7LUHeOvNaq=Y5J} z#xn!1Q5YoTh)D>lRFj)G)^3X#vz?C%=6W896A)|K5WKE9NKcvVX#=L?AymNAq?brF zlO2+Kmvf1^KimH%3iB(N4^h(G@$DeYxz%bhdlghhbdj~|-Bz;jP^q49vX8+TOtUY+ l^pa~N&GEmUor_n1)83U%!ul~^f_9NK4F)K{!{yr{{so_9#ryyO diff --git a/myworld/members/__pycache__/views.cpython-312.pyc b/myworld/members/__pycache__/views.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a5262f8fc91da9d7557f99797277d05b48a04198 GIT binary patch literal 532 zcmYLGKTpCy6u)bW5DTe`(UB0AVx)$}#V|85Xj~XHKo2bGwe{{Q)@Z`ucR(jy4Ijae z;G$tLX<%}4Ght)Vci8Gn?!Di8_x}9e-AkdcjzIQ;@7^=m59y?$Bw$ejFh(}Av5P2f zVJxxYDpYN$fYn>n(jv{we98h7$N7d3!6D&+?{NbDn(Mc1!n!zVD2)b3g|j#THAdp^ zZjg?Jcq%rYB=N$*y>Y1RfsWCY|&i9Ep6@&(E zTM#DM#A}RrK-E;@EF!PBx_-#SZq1_6 z&}Xh~Q9?U1@4_KNUJar+<3R6Arb8P!pO-<6(9GC;H%f0t>9IaFYNN(X-@3~^8283> z+nnl^SFN&uJk&HZv2G9AUf+i$MDWYkNFpi6)ncm&Pl)BAjLH99<_@TDhc2nJ4RGaK VatXdvjPV?m=cu&M6uh&l_yH!*c>(|c literal 0 HcmV?d00001 diff --git a/myworld/members/__pycache__/views.cpython-38.pyc b/myworld/members/__pycache__/views.cpython-38.pyc deleted file mode 100644 index c9551bd5607cb93417f990afeabbf5551534a71c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 414 zcmYjNu}%Xq42^TwQp#0q`~WPs^dx44kXV>1QN(f!IvUd+Buz+CN)b%(A??Ty@G)7L z_ys1Mqm^pOj_o`@Kl!@X>oT(8<>Bay-tSm!8>ixo+#OL6On_txN`RPi$yHJ&lqVwn zU}Y*=S1fP;5R&B(vJ3Cc5S`Iehg7$vt_0c<#Q(KL`h@(P+#OKxYzYEZ@CKg0!ZKO0 zcOX(ec*)e_uC~tiCtk@swQ($DWAry3m64T48`(nJ;*{3pJnUF}oT2lfvq5|^+ab*F zaWT;f3st*fuI+=HXj3><8A-hbb)+a1s#~gKKTTruB^R&QGR}jetCXTc5y*sa;koD SW=X1kZY5A4CuK4h(-Z)Hj}=P* delta 54 zcmZ3oHsbw2M8c&0UPSj7IXmu0jvNd>;fcW*p(+mH{XGnU|kHPO6n{MDgsk& z(xIkLT*qUw?ILV>t(zJE;&%9t^Kabk0}OPCfG!}Yiyfd#0>G(m?%#q0BLRs#m+t0o z$w35>gi?p{KuWT00i|R1%q{H9p)!DfdFuc1I^tn=zy*w~19dgXRi>D-HktJeORr(O ziK)i~f|i-E`m!RioZ0tXqeZdlW5lvON^Fw`#(Nwv#lw`C7Ws%-ZVS_<>tVw&ZOoK5 zp`IVXvnzgA1#(5r4~B)Ej=#Y&mYF2E(o)Qq+XP$4Td!nU#)ywF45k_em%eXdj&p{w z**C3-%%e1Mh|e!(IfQ%ILD*>#?9phIEV~qUx)v>sMoO~W3(|ScXIPHzV9L^lNfW5L zJ$$|8ui%_h!R4yEOI?9xXnes{D-f7`(Sgh`Cjf&M_ zv3ewZUkG(0bm(!>3-kU-VJ$YM2ore99?FfB>Fe# k10F`N&70$HEJ6r>%K%m`co0|r0W4ti5C8xG literal 0 HcmV?d00001 diff --git a/myworld/members/migrations/__pycache__/0001_initial.cpython-38.pyc b/myworld/members/migrations/__pycache__/0001_initial.cpython-38.pyc deleted file mode 100644 index 1c94063965ebeb5775ced02f8d84350438969f65..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 679 zcmYjPy>8nu5GE9|+qfC0~0!Bbv{ zRB(35KtOQEAV9tjz6WUl@|sP0_k?8=;p4(&RyU?9o$nVFVD1)e>(C-fPU*NCa>!B+ zEET}hAY-Y--n!q8z`;5MPM?Gx^mlS8U_iA9LWp*pviLB|0vPT@#?u%^L}%=y*%OZ& zKbT=LN9(*WaN)&=^NI8$y=f}7u&5gZKdh}OwB4#(-1^9&H99xn(2qW&omUQ3sSEVc z(pcBD;r#aI}A$4Zebn;a<~DfMZi z^A=3mz?7z;!F~i-V+mL;3_43s#QgBAV>)XEwLx2n-qQjX?EoL0t+d^TaaH4^{6Cm| zPQcFnK2KIvfk|Op@};u3ZdKKZD|DSxZA+CLl436sVV)i^nNFu~)FZ2tdTZN1qff^j zlM96uQc5nwF+bu*f5cz;&>^l!-U!yZ%&HTZclrzc{lbRX?{9D3Fsfc_x#sh6+#_ z2Llr`%YPPDCPon^K1LAa0%8$Hrk^bTSa_HiS^jf;p8SVNSpaS@*z_W;$@&a diff --git a/myworld/members/migrations/__pycache__/0003_employee.cpython-310.pyc b/myworld/members/migrations/__pycache__/0003_employee.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d4d5ad6f109fbd8fd6c2043bf538642a84a70c93 GIT binary patch literal 831 zcmY*Xy>in)5WYLfvLwqP{0tSt3>3_`i9FCUOu!H(MN$BjnwztCt;o@jxsw6Y!qDX% zprqq5c!q1K{0LAGRTSrEjf4%0EY+&cs?u1mr~q>_YfP6{L|~t` z`9cC&!ht0Mc*+w8-9@iSfZn1HE`2@lpnvAh1^9I4Ljd6!Cp5T%qAO_FqMgq38hT%Y zZ;bBjUOrFzaQ#eB&Jb=8ftxls`u}pG(J!!=qBhB$@p$}DntBCT)%Sk}K~sJWr za)`U~#uu{`QyU&h?5e%DTpX-lhR(i$&bw$<)aOzS`17U&6Y(lq&Y#ck&w(`M`L literal 0 HcmV?d00001 diff --git a/myworld/members/migrations/__pycache__/__init__.cpython-310.pyc b/myworld/members/migrations/__pycache__/__init__.cpython-310.pyc index b138c514e948aaccb64ad058a76ad2d3cc6dfa0b..d771320cf79dc6db979d244e09089215e3a13022 100644 GIT binary patch delta 53 zcmbQhID?TVpO=@50SILB{-;gkv6i*gFUrp^(J#+0$}TQQOitA=&MZmQ&#eRsL&rQuu0;$W*OfO0-$;{6y){l?R%*!l^ lkJl@x{Ka9Do1apelWJGQ3N)1wh>JmtkIamWj77{q768DBD!l*z literal 0 HcmV?d00001 diff --git a/myworld/members/migrations/__pycache__/__init__.cpython-38.pyc b/myworld/members/migrations/__pycache__/__init__.cpython-38.pyc deleted file mode 100644 index a89f2dd2a790da14d78868d711d13a5d9811162e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 155 zcmWIL<>g`kg2n*lWDxxrL?8o3AjbiSi&=m~3PUi1CZpd&M4u=4F<|$LkeT U-r}&y%}*)KNwou+{27QD0Kg3;lK=n! diff --git a/myworld/members/models.py b/myworld/members/models.py index f81736a8..28c04ff0 100644 --- a/myworld/members/models.py +++ b/myworld/members/models.py @@ -16,5 +16,16 @@ class Students(models.Model): mobile = models.CharField(max_length=10) branch = models.CharField(max_length=10, choices=BRANCH_CHOICES) + def __str__(self): + return self.first_name + " " + self.last_name + +class Employee(models.Model): + first_name = models.CharField(max_length=200) + last_name = models.CharField(max_length=200) + address = models.CharField(max_length=200) + mobile = models.CharField(max_length=10) + salary = models.IntegerField() + department = models.CharField(max_length=10) + def __str__(self): return self.first_name + " " + self.last_name \ No newline at end of file diff --git a/myworld/members/templates/myfirst.html b/myworld/members/templates/myfirst.html index ef1398d2..c6c17754 100644 --- a/myworld/members/templates/myfirst.html +++ b/myworld/members/templates/myfirst.html @@ -6,4 +6,4 @@

Hello World!

Welcome to my first Django project!

- + \ No newline at end of file diff --git a/myworld/members/templates/student_list.html b/myworld/members/templates/student_list.html new file mode 100644 index 00000000..09cd8774 --- /dev/null +++ b/myworld/members/templates/student_list.html @@ -0,0 +1,35 @@ + + + + + + Display Student + + +

Student List

+
+ + + + + + + + + + + {% for student in students %} + + + + + + + + {% endfor %} + + +
Student IDStudent NameStudent EmailStudent PhoneStudent Address
{{ student.student_id }}{{ student.student_name }}{{ student.student_email }}{{ student.student_phone }}{{ student.student_address }}
+
+ + diff --git a/myworld/members/urls.py b/myworld/members/urls.py index 041d4909..8596310f 100644 --- a/myworld/members/urls.py +++ b/myworld/members/urls.py @@ -5,4 +5,6 @@ path('rest/student/', views.StudentView.as_view()), path('rest/student/', views.StudentView.as_view()), path('rest/student/', views.StudentView.as_view()), + path('rest/employee/', views.EmployeeView.as_view()), + path('rest/employee/', views.EmployeeView.as_view()), ] \ No newline at end of file diff --git a/myworld/members/views.py b/myworld/members/views.py index 62ee6e1c..1be705ce 100644 --- a/myworld/members/views.py +++ b/myworld/members/views.py @@ -1,8 +1,10 @@ from django.views import View -from .models import Students +from .models import Students, Employee from django.http import JsonResponse from django.views.decorators.csrf import csrf_exempt from django.utils.decorators import method_decorator +from django.shortcuts import render +import json @method_decorator(csrf_exempt, name='dispatch') @@ -15,20 +17,22 @@ def get(self, request, rolno=None, branch=None): student_model_list = Students.objects.filter(roll_number=rolno) elif branch: student_model_list = Students.objects.filter(branch=branch) + else: + student_model_list = Students.objects.all() except Students.DoesNotExist: return JsonResponse({'status': 'failed', "students": None}, status=400) - students = [] - for student in student_model_list: - data = { - "first_name" : student.first_name, - "last_name": student.last_name, - "address": student.address, - "roll_number": student.roll_number, - "mobile": student.mobile, - "branch": student.branch - } - students.append(data) - return JsonResponse({'status': 'success', "students": students}, status=200) + # students = [] + # for student in student_model_list: + # data = { + # "first_name" : student.first_name, + # "last_name": student.last_name, + # "address": student.address, + # "roll_number": student.roll_number, + # "mobile": student.mobile, + # "branch": student.branch + # } + # students.append(data) + return render(request, 'student_list.html', {'students': student_model_list}) def post(self, request): if not request.POST.get('first_name') or not request.POST.get('last_name') or not request.POST.get('address') or not request.POST.get('roll_number') or not request.POST.get('mobile'): @@ -42,3 +46,66 @@ def post(self, request): mobile= request.POST.get('mobile'), branch= request.POST.get('branch')) return JsonResponse({'status': 'sucess'}, status=200) + + +@method_decorator(csrf_exempt, name='dispatch') +class EmployeeView(View): + + + def get(self, request, id=None): + try: + employee_id = id or request.GET.get('id') + if not employee_id: + return JsonResponse({'status': 'failed', 'message': 'Employee ID is required'}, status=400) + + employee = Employee.objects.get(id=employee_id) + employee_data = { + "first_name": employee.first_name, + "last_name": employee.last_name, + "address": employee.address, + "mobile": employee.mobile, + "salary": employee.salary, + "department": employee.department + } + return JsonResponse({'status': 'sucess', "employee": employee_data}, status=200) + except Employee.DoesNotExist: + return JsonResponse({'status': 'failed', "employee": None}, status=400) + + + def post(self, request): + if not request.POST.get('first_name') or not request.POST.get('last_name') or not request.POST.get('address') or not request.POST.get('mobile'): + return JsonResponse({'status': 'failed', "message" : "all fields required"}, status=500) + + Employee.objects.create( + first_name= request.POST.get('first_name'), + last_name= request.POST.get('last_name'), + address= request.POST.get('address'), + mobile= request.POST.get('mobile'), + salary= request.POST.get('salary'), + department= request.POST.get('department')) + return JsonResponse({'status': 'sucess'}, status=200) + + def delete(self, request, id): + try: + employee = Employee.objects.get(id=id) + employee.delete() + return JsonResponse({'status': 'success'}, status=200) + except Employee.DoesNotExist: + return JsonResponse({'status': 'failed', "employee": None}, status=400) + + + def put(self, request, id): + try: + employee = Employee.objects.get(id=id) + data = json.loads(request.body.decode('utf-8')) + employee.first_name = data.get('first_name', employee.first_name) + employee.last_name = data.get('last_name', employee.last_name) + employee.address = data.get('address', employee.address) + employee.mobile = data.get('mobile', employee.mobile) + employee.salary = data.get('salary', employee.salary) + employee.department = data.get('department', employee.department) + employee.save() + return JsonResponse({'status': 'success'}, status=200) + except Employee.DoesNotExist: + return JsonResponse({'status': 'failed', "employee": None}, status=404) + diff --git a/myworld/myworld/__pycache__/__init__.cpython-310.pyc b/myworld/myworld/__pycache__/__init__.cpython-310.pyc index 7948f38e80e15711bd4ffb1396bda00129f438aa..9a7f6c5b00092aadc94be66ae4044446ac7ead93 100644 GIT binary patch delta 28 icmZo=>}BN1=jG*M0D_x2|I;S&STh<-^pKqxs{sIEjR$i8 delta 28 icmeBWY-Qxh=jG*M00PGV<>ZMx){GhxJ!B{5DgXdWy#?R^ diff --git a/myworld/myworld/__pycache__/__init__.cpython-312.pyc b/myworld/myworld/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0ebd1ee8277ec42125c7eaeea9ea96ea8f60d960 GIT binary patch literal 155 zcmX@j%ge<81UGa3r-A6lAOanHW&w&!XQ*V*Wb|9fP{ah}eFmxdWu+floLW?@pOs%( zo|%`FnwOVZtY4a!nVer*RHAF7pIcd;UzC#qr{m)@^D;}~;$jfvBQql-V-Yiu1ppi~CnNv> literal 0 HcmV?d00001 diff --git a/myworld/myworld/__pycache__/__init__.cpython-38.pyc b/myworld/myworld/__pycache__/__init__.cpython-38.pyc deleted file mode 100644 index 587013a23f5f99f0bacda240d9f3536df4804ff6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 144 zcmWIL<>g`k0>=R5WDxxrL?8o3AjbiSi&=m~3PUi1CZpdt D_g*0X diff --git a/myworld/myworld/__pycache__/settings.cpython-310.pyc b/myworld/myworld/__pycache__/settings.cpython-310.pyc index ee472f21da4168ca2714b37daad4f0cbdee726aa..f8a8e9e0e4bfb00db1967d245bc4ed630c532242 100644 GIT binary patch delta 458 zcmXAmPiqrV6vgLd-uyAmq{%c*jZM@lC^2TN(hBaHHWLg4gl1-Qg{IToad>H)A)N_r zvvIGh_*@8f5xWz*>(0xHU&Aq5?kfWVDFLiL1Yt>rkHfhP?;vWf{>W4(p9&KXJ>jz<#^&`JKJo2mY$;QrM@T@v`zJFZt zc09i_*n2QwFS;ke{#saxR^rq9{o_;C9d49y5Jcst&gJXGZh`>+Mt^ER>&@*p@XyKx z(Jo)AOQZ_2>uim*DE4C3eKIQjZ?tgFIt@vb=!8wfvaTO zsX5K9j=SBuGV6Au=C+(p&2?UN8cn-Z|0*4=h*!+;XO+L#OMIf=%Q?cMQYw{^sYd05 UOs{o~|IinG((6lpO=@50SM+tDJS>xOyrYc+%QpFvObF?g*k<#mobYqi#3WZg*A#jg*l2N zg)N;iiZh)dg?$lY6c>=@0MgtkoKZX}ARcoHH<096#F)vL!aIirsFpW{FN!aPKSdx# zFhwXuI7K8yG(~I<0x9w`QGzM5Q9?jVg@ITE zh(%N6qQp|z~XQ%B+A>^0BC?G{zj1+A#DEOL{VlakajH9rWKwv=uhC%69KEg^}jCp0KTeltve%X>?J_K)iGCpG7m$d2~s- z(7l|yqTGVliWRpMy=8C|TNcq&PV4R(ri!?>X>8%9#m8bxSjVPfVZ=4M+zsSm z<`kq6ouigwT0_qpT!#V+Hzd8wf6m_n^rFjYn3y9v&})iC44s2NYm-1gqT*W+AICN= zt4$x|^T=pYeh_1nLDSIkSkD7t-ZI*xN%NzG^8F77^*;Yiklr1&si@YKi68f=XUOI@6IaE6+FAs zxV}TaYQAi3-!*3GRjYeV-|doS=W!10v}kU=o(tRA0S(_Ybju_S-V@b6H@Vw^h*u^y zT?p1KtJ}uZzBpl|m{O4Wq(K9N(gMWgNrVLl({zsmY#P=Y*rdGDZc~1FuqYV%25CXg zb3>#?5K{53Vq)IYfLL9==86H6Mlz0rmj}|0q3)mZ5-MqKZz;`fXcYe2 zMN`pmwe5BU9m6GtEy#CFmD>3si-one3SG!I0FHGu>Jq-_HDrBgrcTByjhB`T{nLb` z43p*p_GgncC%t%t8=aPY^9-IQ-hpni?Af8OOXd}@tLQ1ruG03M3FjjfPXUZ)-Yi^Qsh6sinmscTY?ro(TeYCFcZ5zD;SHsuT1WMc8prz4 z9hF%4jva%|;XLPaLSkj9R1uv(MOYS1xM~^u$wcB_-Lw@-;ig0~+$;on;rKO*O~G=N z=vcT$G@>eQJ3JeB7^eN`tW3*9Ct61E5jU*2_B!7pwiK>Nt!1a zf>@vHP{+SkFW6zY|Dj#-_Qyk7P*O7xRw=(gTF_3$BEc%EM*; zOg~8LL}b~$bliOtQ$u}$olqO@6y0(n3qnnFPuhvq#KNjrm!FE?Il-d1u(sqRg>t#N zE*9k{)mpvgq)L@q9kyTt%A@AQmP^HASzH%ZMJKUZt=8qW)pDU)S#+Xxae1XI)Ww>U zUau{cT>o;ZAh?y}M2kXQaKqM|8DXvdL|zeUwe{+1QGO@d@s^ZF{xFy z7wdK&?+<5V zhtWhZ)c2>7zFxG?F6`Q9)y{p-y1OfPwmnC?Xn;#0lI0VEyjCz#YlNHoS=xVOh-%uhj! Fe*uZvSNi|} literal 0 HcmV?d00001 diff --git a/myworld/myworld/__pycache__/settings.cpython-38.pyc b/myworld/myworld/__pycache__/settings.cpython-38.pyc deleted file mode 100644 index 1afd38e83328933250e98abc5e9f56e10b72a6da..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2318 zcmb7FTXWM!6qXgmc8mjogiE0pQ9{9?NTkrx=@eRFi{QbxMlxyjqLH<0c@y2xt`efx zKKCE+2l_YqGxXZ0zIQr9hbcXh?Zo3S)6}-syXTzmJ7>?Hv+6G|S2+0m`NIwSMwR1! z&la{`APh!itMe20p|AQHX9gCKH|7)HS^wwY9^Y+)Zq7Q;v! z9E!J4j=5_gkN6^GR>UTjx5StNi#Q>@FKq($X~q~tSR_7>dln;sFT#(F2)H9I{v5pH z%80R$ek02$u&FfmF!gT-o{W7N=wudz#HR8zTzO2-Mpzuit}D8PGBFq)Z^!ZxIKm_n z_boTZ^#AyZ@NmY_A8_nkt&j>mi;Z-c6e){{&5|#C+pBr|5ASUR>+bN*VX#gQ99NdQU1mP*@HiuFfME9EhDA1L!>L4RAyyD-5aB9xv*FKO|0acY^Z>LM}eA zA}mpC#}Q$Nk~W#Nk95g{c{h{5q#3+6md&7QC!N6Adx0<2^S}QvrO{BT!|;OOgBjC@ zbFo;E*4a1|SVKmMotNeeaDEfhB+i1{d!EyHJOP4TwKdFFlGOzJz zQSEFsJ8CL)l(rfzL8m9r<^s>FCbTGpyAhdin-G+{lll}#3d=GPGprGhxK`E`FUA%@ zlsrByQ=9n2i@g^19X2|~e|K8^xJi1G7>^0QKP^Eg_AuOOCm9y8e>bM-LSL^ZWf`t~ z=oYzCyPTFx6E1AiOiLkLi!K>NJR~nIn`U;UWbz2pz}?4bF@!tAXGZynqN&+grWH-C zZ>zfbT>U9sY^YEATj{dWYIS$ihWV_k=~{ZW+0k?mfdC3XODpYWqtQ}#lx;PwZg;!7 z+23x}yPc=$lCHLUEk#$gbY(}|YG(GWW?ji@C0%MLx{|ro(kn_|e`fX+P21^iH_R7G zs|m_3l-P1h>1_3tE!C`d8!8Ys+p1}Fp(x6I2)McVb!R+lZQkpo#Z0Cfum>G{)U!B# z7m9pg=KDrCGqWo2Z-j~<q!I&SRRIEx7%>uJF~BC9j2pXcN^D2A!!X@;&4=(y z*|OpnSOC{)iXtSWu@vXpx;{SVTwis18X_2%Uw^M23=sP67X1;x;w5~>O$?=odCV_8 z;itam;z2nOK^ll*I`j|^SipyDxcBxx#3Sx+N89n zv}hr4RdQ-LHk>a)3}a($Wfp`mm79cZsa&f{t1ZuMk}E;DBu|q^#Hy;u4ROf?t~Vrn z{e=p^GK=uMmbqhhxV8m-oZwfCVJdMUDy8iLF?)R>1$5XO3_|6`%-hHFP8X^lG4c>`E2`&+Vc`3W_d z1DVDDFuIU=S+hc}!G!icCoP9!9{ss!jln<#%HwkREXJ$O%EiI1Lpc&>_>p9nJ8w<7 zHQQyW)&vYZ-W0iw7B`CH@CQ6y6no8(GEvCbZvy9dGw!l?6T!ujYeRO^E^3eNMr}TM z7vE{dSq2X%%hJ0YXOL=jvDEOKQFGE0qM?hBc5TxHrm(yToV@0wSMqO2yQXWWpL3#> wvIIKflc{LVi91BP7Ww;k7)f>0Or8nF>XN_k0KiOP3efc4eQ!FLdXry&0E&|?5C8xG delta 181 zcmX@deu#-LpO=@50SF@Ul#^F7OyrYEv;p!`7*ZH>7;+h-7#TrqrW~eR<|yV|mM9iR zhE$dm=2YesmS)CgCLo(Nl`)Goi>;X{ohgbvg)Nvtll>*gKuyM5tcfYPnR%K_x7aiD zl5>!~^m**E{7Z)TZr|K7HmZVOe U&n(Xeavl$Z03#1G4V^_u>gkPrhhqS7_eHHHcpqC$l#Dk>ocM1^z%*Iewo%PF=a+o4>= z!qyEsm45;CPhspt76vA^RuxMZuyZ*SAtB+x{$hXM``&wwzbq|zK#vdn*I=~)z<2X8 z8_g=Xe5ZpGfI$~v3)`th?XGQ^xRExf({-rZbuC~6;$TP5E_P3?Y3->!UCXm3vB!%Q zW^EZS*FLInRyVY}t;w9s-py0V8(iBLjIDC_k0~x>_E+FNCz=RFBpd|#%QW8l5B_W{)^%yCY$q*sTV;SIa z#D+W*d`w~$#GE3+(7oUeQanpyiA*xm?IrS_yp5>FlA*Vgv)Hhkwk<*L2JkV)Fk&#F z85b&qa3DB^bkd8mtlF&QZ&dlEWG$ekP?u`4qqTOsQ|TIUN;;55lss&kxb1t}X(Z)( zUkk%E)PJ$yYD9z~5|l>G=seX}CHwzmWAcMY_6*3H{}-cO7NfxS!hE}MjN`>zm3`Qvg!YM$=y0)$%F@GTnU9|P^Tk}Rr+=VcuUM`)YpF^keWBkP zC>Cl$grj$aYqlMkC{j2^Ua?TS^3UK>AA_q0Xiu89V?H@ZSf4PKNR+cA=DASo8>o6G ze^vt&WRt7bCgnI!$s@6%VayAan|eBLSeA8RFI&#fo4~sD4Xj=?fjfV6vnsMpgx}O+7ryrxcn~$%OkYk0SF|pMh4dyM@}>`w5EpD3?s<|l~k}5 zuLO7^ai8?*N)DvXMEZit>Z-#@dT02Zm?Hz%{usMs->?kNMJ{_1>6GTTfYyjcLB;DXo$X!KKgztOa wStGeop1)i7<~uubZ<%Zx$QcntZ@STSq)fFZ!=00q9K1ulMm0n~0<2><{9 diff --git a/myworld/myworld/__pycache__/wsgi.cpython-310.pyc b/myworld/myworld/__pycache__/wsgi.cpython-310.pyc index a27814d1d5e2666c9451c46802d0669efe77ae2f..85fbbd84973f8e17028cb57ec2c9f8db853e7ca1 100644 GIT binary patch delta 39 ucmbQivVesrpO=@50SIp9{7>7+BgDvTqGvE!k#Q@d&gAQivXkF1>Hq-5nF_i9 delta 39 tcmZ3$GJ}ODpO=@50SFuel#@5|2r)7n>lsc~WZcTAGWj~A?BqX;Dgd2!2`2ym diff --git a/myworld/myworld/__pycache__/wsgi.cpython-312.pyc b/myworld/myworld/__pycache__/wsgi.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..66512c398980bf8b9c8c4960bc65360847922fc0 GIT binary patch literal 643 zcmYjPKW`H;6u0j}Q(b6OA==qOERpCrAjE(W63`L_K{})rQkKi*{E|5G*(cjcNViV? z2z&2lOrn|Zahqx0Zx zyU`?xl6^iPeWgh{n<_0B$+Q|lV#6S4S_1DfWxx*fu0a4PCb3^)Ez&&CBf}ypUc}yu& zi3!;#mIJl&l&F+~qz}V79jd8SltCucECp%l)C@QceiduBYB;|=02>u|(KQ?S_U@}^ zt;T-T-a9yGwi@l|&HnD;>%F7R<@TWgYq=blS~)LAk+Tp*xu;CNxiAtY&VN|YYTpUv zWsnoDmCOSNWYCYt!seB0iXYItaCGsA9vaYwj?`?*We=p}hK?mq)L7e{2Xv|bKNk{V zHoI7VvUuaCy6R}$zd@$%j^94U_>Wh{rTHy{gP-XBH{_iJ$H6(;`h>R5w!^df^DpSd Q_v)R`)w{)%BmXcNj#!0uu4*>NhMCP88!ee@ za0yi?@_ZB+e0J!;v#