From b1ac2c9ab75f2d549d57b316c41de4d82a7ba8b9 Mon Sep 17 00:00:00 2001 From: Rakibul Hasan Date: Wed, 26 Jul 2023 15:32:45 -0700 Subject: [PATCH] 2nd --- crud/__init__.py | 0 crud/__pycache__/__init__.cpython-311.pyc | Bin 0 -> 165 bytes crud/__pycache__/settings.cpython-311.pyc | Bin 0 -> 2590 bytes crud/__pycache__/urls.cpython-311.pyc | Bin 0 -> 1147 bytes crud/__pycache__/wsgi.cpython-311.pyc | Bin 0 -> 680 bytes crud/asgi.py | 16 +++ crud/settings.py | 124 ++++++++++++++++++ crud/urls.py | 24 ++++ crud/wsgi.py | 16 +++ db.sqlite3 | Bin 0 -> 135168 bytes main/__init__.py | 0 main/__pycache__/__init__.cpython-311.pyc | Bin 0 -> 165 bytes main/__pycache__/admin.cpython-311.pyc | Bin 0 -> 664 bytes main/__pycache__/apps.cpython-311.pyc | Bin 0 -> 532 bytes main/__pycache__/forms.cpython-311.pyc | Bin 0 -> 1124 bytes main/__pycache__/models.cpython-311.pyc | Bin 0 -> 698 bytes main/__pycache__/urls.cpython-311.pyc | Bin 0 -> 662 bytes main/__pycache__/views.cpython-311.pyc | Bin 0 -> 2392 bytes main/admin.py | 8 ++ main/apps.py | 6 + main/forms.py | 18 +++ main/migrations/0001_initial.py | 23 ++++ main/migrations/__init__.py | 0 .../__pycache__/0001_initial.cpython-311.pyc | Bin 0 -> 1086 bytes .../__pycache__/__init__.cpython-311.pyc | Bin 0 -> 176 bytes main/models.py | 8 ++ main/templates/main/base.html | 22 ++++ main/templates/main/show.html | 58 ++++++++ main/templates/main/update.html | 20 +++ main/tests.py | 3 + main/urls.py | 9 ++ manage.py | 22 ++++ 32 files changed, 377 insertions(+) create mode 100644 crud/__init__.py create mode 100644 crud/__pycache__/__init__.cpython-311.pyc create mode 100644 crud/__pycache__/settings.cpython-311.pyc create mode 100644 crud/__pycache__/urls.cpython-311.pyc create mode 100644 crud/__pycache__/wsgi.cpython-311.pyc create mode 100644 crud/asgi.py create mode 100644 crud/settings.py create mode 100644 crud/urls.py create mode 100644 crud/wsgi.py create mode 100644 db.sqlite3 create mode 100644 main/__init__.py create mode 100644 main/__pycache__/__init__.cpython-311.pyc create mode 100644 main/__pycache__/admin.cpython-311.pyc create mode 100644 main/__pycache__/apps.cpython-311.pyc create mode 100644 main/__pycache__/forms.cpython-311.pyc create mode 100644 main/__pycache__/models.cpython-311.pyc create mode 100644 main/__pycache__/urls.cpython-311.pyc create mode 100644 main/__pycache__/views.cpython-311.pyc create mode 100644 main/admin.py create mode 100644 main/apps.py create mode 100644 main/forms.py create mode 100644 main/migrations/0001_initial.py create mode 100644 main/migrations/__init__.py create mode 100644 main/migrations/__pycache__/0001_initial.cpython-311.pyc create mode 100644 main/migrations/__pycache__/__init__.cpython-311.pyc create mode 100644 main/models.py create mode 100644 main/templates/main/base.html create mode 100644 main/templates/main/show.html create mode 100644 main/templates/main/update.html create mode 100644 main/tests.py create mode 100644 main/urls.py create mode 100644 manage.py diff --git a/crud/__init__.py b/crud/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/crud/__pycache__/__init__.cpython-311.pyc b/crud/__pycache__/__init__.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..f4eaea0e87039bc419956f3aec4dbcad923061a8 GIT binary patch literal 165 zcmZ3^%ge<81e}{Tr-10kAOZ#$p^VRLK*n^26oz01O-8?!3`I;p{%4TnFAHa@n9$p*q5=-7>&UbPeV;c zPU3`|!bzMW5j^QkAcWIT0~#Yw;whW~ttot_N3%V8R%4nWIgQWBQ+Qg=fWI^FWburA z7N3{T;R_PVT~u?h9JaWx8cma<#I`k~Nx5Cq;u=;5b8XAqCk>lt*>z$NOSK8+b`H6D z+%s5EaZ58eYO9t#(46Nw6dCJo|n+?kMeGDULn5{f9@&K5(&9>H{`C+vAKD@n0xZRGfbGk-t&fGm+jcQ zIJW~HFOD&N6Jpr*VVh8AdQ3*PSS2;W<+W*_pBzib$6oXDJ&amYas{D{5O=Z#q9-gN@|-7*cn(0l!dDz$d`0+9O} zIT%s>d@L3fQaBoi0CUKm*65Yvh~fAmh6x)r-smTB#OnHc7NKj6hx=;dA+!Yl^_r!& zNVVZkKP$bOog0#rIJVrh+c z5yHe+=ukJfRWCSEIOCyF^3KNtSjc3{#6+k3s@8-?GS@Vs<4SJYjVcNp--_Z!+i*zg z+Kv^3)VeW6@edZCZxL$hkBJ*;!)apJZfsSMM1PxIRuT)FVqLi>e&dFV;_BAAn-t3B z>I1Q;+^tG=$xW3iQXN>pfZC8;cB51*mc<9crsyU%tJS))wOKAyD{F4NE^gGyLS2;H z^aE+VS(u3+|QMoUaOCYR5^(D(fWqnIn7nMS_ zC<0(&=+`|kGlxBr}&{bOSG<;0~|{(a@u#9}w*rBG^< z>9U|0PjYRSH-0=Z*^M2;;v!xGrKTZx7M;6x MgfjixnuB!y3lJe#O8@`> literal 0 HcmV?d00001 diff --git a/crud/__pycache__/urls.cpython-311.pyc b/crud/__pycache__/urls.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..f311f2a437370505249aacfb71f7024dea9e8221 GIT binary patch literal 1147 zcmb7D&ui2`6rN-!yW5m)#goTrD{KQb!BQ`aRiw4FAR=lhtP9&TGrOBL$%L7#+UlXl z9(ySGA5_GnXa9#5dMLSi^0v@hPrk_ySVckKCd2H@H{bidH#46a4HH4keEUjQD+qm8 zf6Ay8ldBIf`G_cLBdSq7&_cbfYieEzDj{y;&}bVP(h}?FA@dU3 zG+z!F*&T@>c9VpONbZurmkAMklrTwvLXw1&H$HnSZL$IDLoOKcBcKX%(l}tQWJEI7 zG6}>WNn+V@9Lhau)1e#nd0Ecmp~E6)#a?z29{Zkj6xf0C(lH;ub3@>gEpuZOd70j< zY({$5CXXm3ZbbYr<|1hk(i1!+;eOYR<06^M%<#(vUO7+(CLF?2FgsXmHkS%t10J#^ z61gE;ZK`?GGS>oE$~${tj83rrO$AQ|Oei6Crnr=|30(i9M&WH&b`{B@^_!xt$O}f) zkNVJrte&!_wzurhR@N8-Qeb-&mMvPOSG2N~w=3TcTQ$5CSzwp4ru?(oy@2-}Xkb~X zsS+7))3VGT>UdgOYPdA?BTG-Q>Udf!&jglG?sqCQmj0s(-Zsr8C}6=biK0H>TF9UWM}hPXPwE{aP&Gk zRe29O>Qdx`qOs%s>-znW(^0@4h#NqnZk$YD7*{k+8|$+g9wRjnq|KcnGWlGh+h>1z z##LlY9j+hUI=*+(I(c}G7cTI^C9Xs2=F!g4&he}B#@t0??i|lw;Q6tEXZ6Er^%FBt F_$QsZSAYNj literal 0 HcmV?d00001 diff --git a/crud/__pycache__/wsgi.cpython-311.pyc b/crud/__pycache__/wsgi.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..670f05589049b185cbd4aa1d8b2e379ef57ae509 GIT binary patch literal 680 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 literal 0 HcmV?d00001 diff --git a/main/__init__.py b/main/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/main/__pycache__/__init__.cpython-311.pyc b/main/__pycache__/__init__.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0fe574c8766fbdc24bb045f3cccb3368ce165123 GIT binary patch literal 165 zcmZ3^%ge<81QMG!r-10kAOZ#$p^VRLK*n^26oz01O-8?!3`I;p{%4TnFAHa@n9$5~i#;WMU=jffTzK@GC!cm+Li`~)`BRv>L12e&h%H>f#(_T3>0p-?=cT;T>o86tI z4_o`Qk9^GIHtwh&*hdZS-k`|GCi!M~lh&thby^t)vK^y`)TB1H`-#o<+)c4fMyla> zTeqFp&6ID&+L{Rizoq0RsR literal 0 HcmV?d00001 diff --git a/main/__pycache__/apps.cpython-311.pyc b/main/__pycache__/apps.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..03fe2b4dbfc6a9e70fe515317a931365639f1d96 GIT binary patch literal 532 zcmZutJ4*vW5T3oeNX$btMKFb+pqR1kw8HpjtoW;WsCy}U=ERSJKA*yJB5 zVwpdZGF)qA7l~CWckeEO=H96u?OFY9&PWZ(oq3&u5irmR0?#G7 zjFPUP%xfq~>D;v3Ec<>72d3NiG`!Xv51AcmM^?WXN8Yi;Y)lk~Q#)!QDN^d14x=+t{@8NDW!fjO~b;JfHTm0wVSbbMdgnZfoDT3Rw^urx!+>g*TDs8`%T4 z{lFWrZe(~CFI*{u)Hidw(o>R37PKwAe$0G zzd#v@dP#;Gf*c@%2zHQ*4UB{=^K{9V_r$KDrWBe2+d-_vCwm4>CT;(xJ%YNX$eGnaIMQ5`nRb@HJ*^6y$Js%ovpor7jZwf(=zdRBP%Zb3`I?1AkWz zMTkcbW-RfU)JXfsng7@!__J)Ji7EotE+#JnF0NDGF36G6vRxXf)U_KZzvT4vnsV*7ohKvoQ%Us_Dw7Vz=U7f#>ks^QGNARb-qXYTIa*1pwS zJFW%~OF^!Dk}LOf~ zE%mddfv(JE21r0xhmYM9PT9PGYC&Pspv(Zwj+WURu=vz1V9?(DKD%t=V&VP2$`lUA>= w1#uM~Dc=z=kTJ#~nhVB9h;9etBSiDT_!uY?SR{89x^&k&gZ1-kHsb_;1E*;WHvj+t literal 0 HcmV?d00001 diff --git a/main/__pycache__/models.cpython-311.pyc b/main/__pycache__/models.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e74d6b2ec84480a22edb14d28bd770469df9b137 GIT binary patch literal 698 zcmZuuF>BjU5WXi_iT$JuZ6Hf(lBr;fGlo)1p*T*`A)!#Z2*E@3y*hCv*_CW)HxC^= zWY3z(X-WS;|Ah^L8m*nOxwuoN-qW)RrMahf@4LHC_wLTV>W*wifnK21$Dr&X0n; z?2~y35?qGh8U{$STPldiz8MonscCC*t(>t|*!M8jb4IyfObFZ*2DlY8skBnI{sQq$ zBI8@67}dx_|DyEzymmZ9kMcyGZsT76Q>+G*D+Q8cQlr0XZf}qGQ+xX=ncDT4T~F=$=wR+t$A_s? z{jxcA8Z)PnI*n0l&a30cDX-4>PRe&iO|{~OMe0-PQbpIYhi~<3trIm#ef4#KC7fgu!Ci;6C4=KbW8*qP@Ndm9L(flDI=~;fOPg`3 zl2e@{q_&h}NlxvRWB<=N(H)Dd96_`Gph!(54398BY-$3>UfLHGKkNk=p$}5rto+@l zKN0}~_ajCnABP^J=WB!pG^IOxewgn1WPe9kB|^N^J73FU`CX`%h^ihoZSjr_yznGy z^`bE4{xMfNh5Z6%JV-c}2shNB6m#`7Toe zW2z&B3fRmSy@2g}nHR8;FZ$F3qc-eZtY370I^%CSZrtO>1UCv?9d`2ChjDlEv32X_ YxP6b?6Wo3apH}dyHni2^8}i4V0ouE>zyJUM literal 0 HcmV?d00001 diff --git a/main/__pycache__/views.cpython-311.pyc b/main/__pycache__/views.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0c872cf40a540f90cbd3b08572da23ff2debf29b GIT binary patch literal 2392 zcmb_dO-vg{6rTO@uFbN58%j!0!K78eO6!D5J&-i53T_j6NF!)f#j%8pX8^+f`QUPOh}6{F)hU;0bvnKhMe}r ze6B7VN?MJnp!?QQ%#Rh20jz@T!2TH&4!qzY!xB>{$zVcR?@i0fO%pSh&6s4G;1nfE zi}`6?dm(UlfvKNi{6&_g>*_Zqp-FCP3>6d!=5Y~LA0ZnpH7tUC3j>f*v#SXsg;{6PAc+jYvp8WTC_e#{ z&BQ8UYIbf3P-eo8hCz9G!zxoL`EG@n78BNHnT2d9N3%SBJV{q@oTndOO_6(MB=UPJ5+}pb?8X%efaHmyrf?&>lgE4Mbo#gZC=~BUbtRGN?@Q8Jhwem>?;RH z^Ak1wd^s3y=x>&TBl(G=;9EO$MY=cV1jkCjv2t(>?44a(H#Tof(X4 z3pcvoywx?ymR^UTXfOCR$)ypG|DL|d%$5H&d!DhE>?JGM+8;qqsg%*8}FN|<; z9)!tJ$N8oXvDzjzh+P5`&&AvU@tP2;Q_J3mjvguLk+L2+#Vk*--I6w5*2W!q+y(5du*Q07%oqV0r&e;sGTl?VT}3&b zn2&S1>DC80Jqyib)>@HMCFT7@`H3GRH>6vS6aUBHxMGk`=oK)*wIcIJ5LHPKgbJE) p&VDNBg5!NEXu$D4)lOabT&SWp8Ipx?6*Waqhj6uuUKVbO{{X=-;)4JH literal 0 HcmV?d00001 diff --git a/main/admin.py b/main/admin.py new file mode 100644 index 0000000..a4af226 --- /dev/null +++ b/main/admin.py @@ -0,0 +1,8 @@ +from django.contrib import admin +from .models import AddUser + +# Register your models here. +@admin.register(AddUser) + +class AddUserAdmin(admin.ModelAdmin): + list_display=('id', 'name', 'email','age') \ No newline at end of file diff --git a/main/apps.py b/main/apps.py new file mode 100644 index 0000000..167f044 --- /dev/null +++ b/main/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class MainConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'main' diff --git a/main/forms.py b/main/forms.py new file mode 100644 index 0000000..7ade798 --- /dev/null +++ b/main/forms.py @@ -0,0 +1,18 @@ +from django import forms +from django.core import validators +from .models import AddUser + +class AddForm(forms.ModelForm): + # name = forms.CharField(max_length=100) + # email = forms.EmailField(max_length=100) + # age = forms.IntegerField() + class Meta: + model = AddUser + fields = ['name','email','age'] + widgets ={ + 'name' : forms.TextInput(attrs={'class':'form-control'}), + 'email' : forms.EmailInput(attrs={'class':'form-control'}), + 'age' : forms.TextInput(attrs={'class':'form-control'}), + } + + \ No newline at end of file diff --git a/main/migrations/0001_initial.py b/main/migrations/0001_initial.py new file mode 100644 index 0000000..9171ebd --- /dev/null +++ b/main/migrations/0001_initial.py @@ -0,0 +1,23 @@ +# Generated by Django 4.2.2 on 2023-07-16 09:46 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='AddUser', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=100)), + ('email', models.EmailField(max_length=100)), + ('age', models.IntegerField()), + ], + ), + ] diff --git a/main/migrations/__init__.py b/main/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/main/migrations/__pycache__/0001_initial.cpython-311.pyc b/main/migrations/__pycache__/0001_initial.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..86e23827c6e51d4e49c49a2f22d73c17e4301e20 GIT binary patch literal 1086 zcmZuvy-(Xf6u)yE6PpAjh?0+?P!&}*2t-FdREa{NR0UO{?cheTOztoaiJjU8l}-#D zIJfNG9IsOG^=P1*z$CzO4#O zX6Y7bGQVS+S)U@c`LO%xDK*CkHmLIje6m9BcG zW5WuDA(Hfw)D|HPm>pRYNLS31lNFLVlG_+KFmE|Z%t>-U_j0;pPIuzf25^`dXiYH1 zqih=rc?h#3Cf2ef2Sw;%@=|j9cdToMkoO*SnP8E5CM?dWBFh?^zN6P%YWS3}?v`sc z4R>4LpxaCas%12+FO+4ssJrTTRJV;LWg^$-1Y)Te%4>Yq8`L)ab(W@0!)maUVNz9a zdw{^CHH$Wgx2)z^MvvWfohiBw53$*xfU~;(Y13%%Bf;vjY|DqBEK6vM+JxFQi+V19 zT-H4sXSu|m(B*Yz*%y{M1NqPM7)+jBH{1?XUh+gbIJ;>3)TGId)1o)saDXo15OlpT zJ6Yvr@v5)hR_Ca<;XAD=sT;QG47OaSPHTR(=5CTIoM~78cT;tIeEgYylkiw;+vQyn zD-OH^P&>EdtfzNpArf()wDTs)AbH@M5@sHr7Aj|j2SIUocPlIo{}g`@1)3h%Zcy}2 zie6asg1moPC + + + + + Document + + + +
+

Crud Project With Function Based View

+ + {% block content%} {% endblock content%} +
+ + + + + + + + \ No newline at end of file diff --git a/main/templates/main/show.html b/main/templates/main/show.html new file mode 100644 index 0000000..902bf15 --- /dev/null +++ b/main/templates/main/show.html @@ -0,0 +1,58 @@ +{% extends 'main/base.html' %} +{% load static %} +{% block content%} +
+
+
Add New Data
+
+ {% csrf_token %} + {{form.as_p}} + +
+ +
+ +
+ + + + + + + + + + + + + + + {% for l in li %} + + + + + + + + + + + + {% endfor %} + + +
IDNameEmailAgeActions
{{l.id}}{{l.name}}{{l.email}}{{l.age}} + Edit + +
+ {% csrf_token %} + +
+
+
+
+ + + +{% endblock content%} \ No newline at end of file diff --git a/main/templates/main/update.html b/main/templates/main/update.html new file mode 100644 index 0000000..02259d0 --- /dev/null +++ b/main/templates/main/update.html @@ -0,0 +1,20 @@ +{% extends 'main/base.html' %} + +{% block content%} +
+
+
Update Data
+
+ {% csrf_token %} + {{form.as_p}} + + Back To Home + +
+ + + +
+
+ +{% endblock content%} \ No newline at end of file diff --git a/main/tests.py b/main/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/main/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/main/urls.py b/main/urls.py new file mode 100644 index 0000000..3e04c86 --- /dev/null +++ b/main/urls.py @@ -0,0 +1,9 @@ +from django.contrib import admin +from django.urls import path,include +from . import views + +urlpatterns = [ + path('', views.home, name="home"), + path('delete//', views.delete_data, name="deletedata"), + path('update//', views.update_data, name="updatedata"), +] \ No newline at end of file diff --git a/manage.py b/manage.py new file mode 100644 index 0000000..8a7cfa5 --- /dev/null +++ b/manage.py @@ -0,0 +1,22 @@ +#!/usr/bin/env python +"""Django's command-line utility for administrative tasks.""" +import os +import sys + + +def main(): + """Run administrative tasks.""" + os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'crud.settings') + try: + from django.core.management import execute_from_command_line + except ImportError as exc: + raise ImportError( + "Couldn't import Django. Are you sure it's installed and " + "available on your PYTHONPATH environment variable? Did you " + "forget to activate a virtual environment?" + ) from exc + execute_from_command_line(sys.argv) + + +if __name__ == '__main__': + main()