From 233a0cebb8f2d6d306476f9e7101ce87bcc8d90d Mon Sep 17 00:00:00 2001 From: dinesh Date: Sun, 21 Apr 2024 17:07:43 +0530 Subject: [PATCH] upload form for products --- db.sqlite3 | Bin 188416 -> 196608 bytes main/__pycache__/models.cpython-312.pyc | Bin 3329 -> 3356 bytes main/__pycache__/urls.cpython-312.pyc | Bin 1067 -> 1372 bytes main/__pycache__/views.cpython-312.pyc | Bin 7055 -> 10314 bytes main/models.py | 2 +- main/urls.py | 3 ++ main/views.py | 62 +++++++++++++++++++++++- media/product_images/icon.jpg | Bin 0 -> 16582 bytes static/js/description.js | 0 static/styles.css | 17 +++++++ templates/auction.html | 3 +- templates/my_products.html | 18 +++++++ templates/upload.html | 21 ++++++++ templates/user.html | 3 +- 14 files changed, 125 insertions(+), 4 deletions(-) create mode 100644 media/product_images/icon.jpg create mode 100644 static/js/description.js create mode 100644 templates/my_products.html create mode 100644 templates/upload.html diff --git a/db.sqlite3 b/db.sqlite3 index 4708fd39729cd442cb9dd0249b6e2162e13b1042..4d4443cc09e114a57b0f82305ebcc497eb3586bc 100644 GIT binary patch delta 1200 zcmZWoZ%A8L6o2==m%JwaIkC}n*15c-WVo#{&m^WJW7t@uHVHVoNU_Dnm%JDAk{C0S z;8aSTR49zHP1){nV2T@*eriiTWHM;SzRY$|91JSkz%Sd_r%^T$HU{0*pb75r&bx2h~_x;&+KPd;u&+U0YOS!7&(;P4^SnwT}{DFF`F8F&WU@C4RNP1#GZoV+{K(#+bC ztY(y4VoH(anXIJBDo36~u=5iEbDwkfo;4d`iGhD<;g7HjKfnfj150JoEi?;S4T}&q zl27lVG;4%4!rwzS3~O}zJZLyphm7Uh57DTBHR=n5-=s->p=1#T^w&~G9b>VecaYBK z8k!CE&IJ6E?y83`&sk#$DKoCfRN3UKT#kF1O_KKp{ z?dj|~^SaC9>^ZJupa(VVfmOo*8GH?H|rS#!@w5&1;0|>kDHS-7$n zy#n{4l~UFLY3;#_UXyA*xEOUp8dq|TtWC=?Z&;2*)!1aFGnpN)9;v+5gF6fqYyUy? zD^RPWm=B;#8}1P(<_1Ii`xO3!UugVGfJWAWs#|Eu(+{x2Dl_n1{YKp#eNi`e?6+gx z{QKIQe7|P5F{6)bWKBs^qPjA3{spy0*-SR{JyYX z2>W_Ne!;q*Czcp$BVVoJ0C}~DbL@N2PYf&Ai|WYs7z&qnKgKr^);E+F3BG~3#x7=r zG_Bxa?HRxJM9@aQFXDC*Ud1g)EEiYs604=BezPWFa4yIdp4X=rE>X{BL)WMG8P}4n z^&MpUGklWRV+anJ-6H?2;+M3;q0lQX4|%Af7s=2n)|CG!;^Sux4HT4v4hA-11(MKF zY8rb1uASw0iydS8scMTSq>Pjjl#HAxq=dAhpdGYxbUx%v27yWxH+Tk}VWs&{4db_WGU@#C2xiN1(MgKP^lQ~(9k0+#@)ISg&9HhxW zi23#atXdTq3)dS5WWI%>&P0KJUmc+i&e`86boN z`2U-s*`5#`crx+`1(%#FNNRVb%NLa^x%SmIDi)3gC#Y6<8H`ZZ!`_VIdf@?UB zMx`Zl8Vg2w@KE&FiQ}=@N%ER*>*vUzitZr%=&Jp~D>-Yg1_#RjAmAT_Soxs^4E1N6R3xb9VOj@LV?m3C( z!V*2B3Yz?xNoySI@;#RwVa-M`Or6vg3ElZb-KO}FHrr$Y>jdlg1HW+UDw_2s?df#@ z#{Zykz8+4uA@hV`3J#}PM;N-D0V9(%jI7QRk7mt!70TYuYxk4Ci zHs^5#GRlID1M3G{3^v3Fq{C~EaFxdIt&!A5}ffGq-RGyrL_2N9|uLIOmnfe1+uAr2yJ!Ng>7 m9uG#_$q76fnqaqq?E*`oD*we{lbfGXnv-f*ygA(b&j zG?h6^V)8mhIU_Jv9LSY|NF$Re5@^~af$C%?cQMMdNNAeOc?kfngE3&Kv3LFi5A zjS{Ss)s&ljg>gnacWH5Ik$!1GPJUv_Exv-H{FKtGQcm+{Vqka-;=lkOl<|25<3^1D#>pQTd09nLnX@D&-(!?# z6$P@SCigMQainua@l}dzN=)`)nlagh*`JYr@)TzK$)A{IfGmC%4=!<_L5x6LymN9Q VOUYz@Rwr&zZhodl?jlj3C;*pp93ub# diff --git a/main/__pycache__/views.cpython-312.pyc b/main/__pycache__/views.cpython-312.pyc index 8293e89165e45182bef73d9c9dcbb58924505998..885544e848712bc4d84d586b0f972672dc61db31 100644 GIT binary patch delta 2471 zcmaJ@Uu@gP89!2#NXe2&OQJ;mvlU04#8j5sEp1jebyGN9owN{|w%8DNoui71BTcrv zBfTab6?tobDno|EAQ~?~*93bQ0wmqmtq*+}&^!&;Uc|Bm3C_hfECbdz&(1@Zr`<_r zlm+b$y6?WfcOQ?x@1rgr_|r?dKL-LnfJXKg*^|FZ0PqhiIK#Ee>};>+T5W0g9GHtp zKngYZIli|>=b}=$8m$+dh{1}qj}9bWgZ#o`}{8McU*|*L^3K>XN|s^8i3fC0nFQz5P1T#VCEJZsTc|=B>EJ<3LYRaRu_Ir0x=7iS zTwATeIqWxu{pj|tWABK}iA<*VAn<$G1Cz^W$`wRVYSwUgBeothgqaUlK6>@{Kl)Ud zF@|T>j&6}IcWg5xY!ugvW+<B1dvOj5C{AkB#vGFbw zzs;mRV@6VUw*rJaW`&|ZrSHi@=%8Qido~MhWvOTPxwQ9~C|M%4-?%fLO9UKJNbN)@ zt?ltecrWsNXed6d;Y($2-hZJjLIw5ULtaR%d$qsE!rD{bAph0Yd%Q31`akg_0y1)6 zx%ubbp{RmiMQ=FxZFv-zRtTrEDxrE*Qgx}6O5LPyc=~QFdQegIsP+R-I83YVo6HSz z*UqSPJ+A$gO?U{PGJUp9043SC10Z=FG^6rK-`DyET5+fZ$B+TyySDufPL|4xRXglR zQdO?N+Okq>F4+M`xeO8h2V!lpyigTA@HIc)4WkLZfe8i+ln}9pDk~6Hmz4Q8YLZCy z0e8PG^}^-V;mH-b3MUuO%sW7YUqi7X3v+1Et_ggb!5iY6?&tj&=6d+-VSXBmxYi-A zMCe9D^gJZjLRn~}uEi|a3%k-Q$sn~{PZDSUX^Ja9xmaHJb47?GnLuN52FP}fy6 zmeXUo>p>%SpyRhj#;-Q6G|Z8rK2q#X9yUgv>oQ487`^Jh;x~o7F67(SM-Ac0P5>(d zR|2LW>VkNE(h#OPflXdC_(wXv+x_CRggsV#ua(SMV~<-Y(Msg*1n97@L*L;*B4fsj zdc0`GGgf-v9k(mt>jbwL;N>p*&-*U~EhcI*Nu5c4%A_~hSXX$&U<+NQa9g{`q_hn0 zB`*`&uU$p&m$mXRsra?`h?IX&eDz_3)8sH&L#JjZ08`ipL`+5uqjJs7gE(`o_FT6kjiBerP0@V%fuf3rX^&~D0?YmsG?Jliy4`8Qw zN?C05klpK)@F^4_1|e>rkj3PoUil2x4e<3e7JGo|A>7zBG z$hKE$D&@w!Tvgx+>|4}^h7;|f2eN_9nH;PB^-^X1NwWUOs6w}%} ziDxMIDk{6r5=Uoy{}|x6QO34MR$y&u!Dh>HrB*}#D3+_RQkJW>N2)E<&>id=8qGKR zhJJnGa)Avkl}z}4h*;VKW8X24E$HZ%U)TXYVsu-G6XQEi_=qWpJKlc*5;$D| delta 101 zcmX>V&~L7OnwOW00SIC~DW?SqF)%y^abSQ6%J^I}QN5O>QczQ9vmE0qNoGGyk;%u@ n>=|!O=2Z8ZJWpMmD-5WT5r~W3C+}Bx<@zke%4k(24HN(XMWz+G diff --git a/main/models.py b/main/models.py index e449d41..61f3b22 100644 --- a/main/models.py +++ b/main/models.py @@ -15,7 +15,7 @@ class Product(models.Model): user_name = models.ForeignKey(users,on_delete=models.CASCADE) product_id = models.CharField(max_length=30,primary_key=True) product_name = models.TextField() - product_description = models.TextField() + product_description = models.TextField(default=None,null=True) product_price = models.IntegerField() current_bid = models.IntegerField() def __str__(self) -> str: diff --git a/main/urls.py b/main/urls.py index 85e090d..4aa07af 100644 --- a/main/urls.py +++ b/main/urls.py @@ -9,6 +9,9 @@ path('auctions/',views.auctions,name="auctions"), path('auction/',views.auction,name="auction"), path('user/',views.user,name="user"), + path('user/upload',views.product_upload,name="product_upload"), + path('user/my_products',views.my_products,name="my_products"), + path('user/upload/done',views.product_upload_done,name="product_uploaded"), path('user/',views.user_inspect,name="user_inspect"), path('user/login/',views.user_login), path('user/register/',views.user_register), diff --git a/main/views.py b/main/views.py index a7e2831..e27a242 100644 --- a/main/views.py +++ b/main/views.py @@ -136,4 +136,64 @@ def error(request): context = { 'message' : 'user not found' } - return HttpResponse(template.render(context,request)) \ No newline at end of file + return HttpResponse(template.render(context,request)) + +def product_upload(request): + template = loader.get_template('upload.html') + context = { + } + return HttpResponse(template.render(context,request)) + +import random +import string + +def product_id_generator(size=10, chars=string.ascii_uppercase + string.digits + string.ascii_lowercase): + product_id = ''.join(random.choice(chars) for _ in range(size)) + try: + product = models.Product.objects.get(product_id=product_id) + except: + product = None + if product == None: + product_id = product_id + return product_id + else: + product_id_generator() + +def product_upload_done(request): + if request.method == 'POST': + user_name = models.users.objects.get(user_name=settings.USER_NAME) + product_name = request.POST.get('product_name') + product_description = request.POST.get('product_description') + product_price = request.POST.get('product_price') + product_image = request.FILES.get('product_image') + product_id = product_id_generator() + + product = models.Product( + user_name = user_name, + product_id = product_id, + product_name = product_name, + product_description = product_description, + product_price = product_price, + current_bid = product_price, + ) + product_images = models.Product_images( + product_id = product, + product_images = product_image, + ) + product.save() + product_images.save() + return redirect('/user/my_products') + else: + return HttpResponse('error') + +def my_products(request): + template = loader.get_template('my_products.html') + products = models.Product.objects.filter(user_name=settings.USER_NAME).all() + total_set = {} + for product in products: + image = models.Product_images.objects.filter(product_id=product.product_id).first() + total_set[product] = image + context = { + 'data' : total_set, + } + return HttpResponse(template.render(context,request)) diff --git a/media/product_images/icon.jpg b/media/product_images/icon.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8c4741c6bc3e92ad5d5c823996ccead4e0769a9d GIT binary patch literal 16582 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 literal 0 HcmV?d00001 diff --git a/static/js/description.js b/static/js/description.js new file mode 100644 index 0000000..e69de29 diff --git a/static/styles.css b/static/styles.css index 37070f4..2a185df 100644 --- a/static/styles.css +++ b/static/styles.css @@ -432,4 +432,21 @@ button:hover { .user_bid_activity a:hover { text-transform: capitalize; padding: 2px; +} + +.product_upload input { + padding: 10px; + margin: 5px; +} +.product_upload input[type="submit"] { + margin: 2px; + text-align: center; + color: #fff; + background-color:#000; + border-radius: 20px; +} +.product_upload input[type="submit"]:hover { + background-color: #fff; + color: #252525; + box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.2); } \ No newline at end of file diff --git a/templates/auction.html b/templates/auction.html index 38477d5..6f8f0d0 100644 --- a/templates/auction.html +++ b/templates/auction.html @@ -18,7 +18,7 @@

{{product_id}}

User_name

{{data.user_name}}

- +
@@ -45,5 +45,6 @@

{{data.for_price}}

{% endfor %}
{% endblock content %} +