From 2983f567bcbc672863367018c38eb5e725e2b217 Mon Sep 17 00:00:00 2001 From: Norbert Date: Thu, 18 Jun 2020 20:38:44 +0200 Subject: [PATCH] =?UTF-8?q?still=20dont=20know,=20but=20i=20see=20progress?= =?UTF-8?q?.=20Lista=20wybierana=20przy=20uploadzie=20zdj=C4=99=C4=87.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../__pycache__/forms.cpython-38.pyc | Bin 510 -> 610 bytes .../__pycache__/functions.cpython-38.pyc | Bin 0 -> 3749 bytes .../__pycache__/models.cpython-38.pyc | Bin 1113 -> 1615 bytes .../__pycache__/views.cpython-38.pyc | Bin 744 -> 945 bytes bibrecognition/imguploader/forms.py | 6 ++++-- bibrecognition/imguploader/models.py | 9 +++++++++ bibrecognition/imguploader/views.py | 17 ++++++++++++++--- 7 files changed, 27 insertions(+), 5 deletions(-) create mode 100644 bibrecognition/imguploader/__pycache__/functions.cpython-38.pyc diff --git a/bibrecognition/imguploader/__pycache__/forms.cpython-38.pyc b/bibrecognition/imguploader/__pycache__/forms.cpython-38.pyc index f31c41fb140e4fbc70b65e5613f278d7e0712e1b..d0c0a28c7b12d88ddf55a2309dc2548c2e91ff38 100644 GIT binary patch delta 322 zcmX9)!AiqG5Z&3N>82(@1S|Rjl7eSFhzNz=EQ0ougQa$-?UqfqW;ci@zo3VbAJC(C z^KiP?!_2Su=_i9YZV?whAK!PUuujTn->FLnedY*B2ApIRy}6H# zdGOMFB^)?i(TurT=+NRG_XY6A3V5)BY=<{*NXl$@JyS;YRFT_otn%eh%W|4h%N|NB zo-`U88#SB=lzg}tqY*}^g|kQwB1!jyBa`$FL5aY9~hyVfclVZ es&_~`TgShxrUOToo#%>|5-+Gzx_(gvjQ#;PG+Oci delta 222 zcmaFF@{gG>l$V!_0SHR-pT%8bn8;U}#0=y)0CBMfkVs{SVoYI(VoGJsVo704Vd`a! zVg<6v}MVbtQ{bk0aDa?4E3Nts;Cs4g1Cm6n;48lMIdSjkYt4>X~OfAV@p uKMocklY^0maWX%XrWQmTED0h6fW$2ho80`A(wtN~CLpgEq@0J5g9!lsC^N+X diff --git a/bibrecognition/imguploader/__pycache__/functions.cpython-38.pyc b/bibrecognition/imguploader/__pycache__/functions.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..819f739cfa5308a8ec2616313957c81563bfa14d GIT binary patch literal 3749 zcma(U+iu&)bvPs?S+-?GR%|I(=CavnH*zvBz_>p zEs$*@2X6>UZK<|O)L5bsO={>wmt%q?VboeFdx#8yj?T1Qt(InLZmO+k_~N;AM2qgi_Fr5^Kgbe!dAo*qBKo1l|yoEB*D z2=4?vDS4-k@J`b+F!wAqVqTt&^^W(^bA?QRZ=K8JH>>h6cV%V7Jm^r9r_-H%v-me@shp@Hc~^kaI3mR}~w$E?)5 z!anYcS*2c?eb86HzY3XRqpZTFo@1b{l4&-?lD%u}YF}Z~wDJ;@nI^d{@;vB96KF7{Ud=BvWm_HBrjhHX==h^jwIEASqlDapgeC|EoE%pgT zVEJYNJ;z{KP;=~-q~_RdIJbFrlb+9`Ngq)?3aEb^`Qoyue^%{snHp9gsWp zD!B{MbdTL(cj+|jsLE!0_d#P0tlem6tO}np^n58-_JN^cS3qRLLl_*jBF{vKNr zt2eM*AJb3h`M!u%wYLnCs*us!1q5<+cZJ>o`Q3g}%D+$Vv86ti_@@-&4!p*Df2Q~e zDpg;JTrDY)zG9nAwhEY9|MD6P^(D-?v<+b7kSy)?@BAxoI0qR*U&t z>mXs=tOw;s3u{}!8>+$%SZ8X-Gn3GK@mhnsPGGhgW}Ve2Ynbg;P&u$$bu65T zpCXJYco*RHJq4iLx>w zzNJ!<(qh?=q?DLSOG=NaVM*bb8j)+LVvT3N>yC!WaI}a5OcO=)1>(Qh`#Kz@$vg@Z z0%Fw7bjQLGq0`L;+b}oK zl`*VzkAr*+cyd-A6%go3Td{lsPU| z2x{-^y^En1>J1Sasnu8FLSAVAI9vdFB>|LiL^8JJ)atI&uqbottO-1Lvei;5()}IN zW0B5Hr^zDCVY2(zgyCeltYppOnqnuCP^HK;c7fi$K$nloFQrO2O?G|Malt5x{Zd< zf{i!GCeft=ABBzZ41h@4iIn|F11~ou+yqwxlLs5|xcMu@PlMt=7Zz`AJy?0L#=yO; zZEL#*-nvc43Ls|$eU!B9X4`AIkP>{W(RS)W$FF#YQI5hS%4(2o)Ecm}VBDVtfV7;V zDVmzqGRoVZno+X~)^b`(Nh@hBt7J7pF_aNy1hjK1KMV6ZxNLQj<+3HRyEE>Y!HyBQ zhUIwez>v%mjqGX)y{M^8|dM8^hLnxKs-D@05zrWYH3IfY++lI&8 zZFAddS;3*f*!ix%9cDFmf==oGm=~+!vey|ZmpzkG%W1~$!_pPgcH2%M z7K~-WXV4M@GwVCXw#y+3gu>dRl}MM@!F6#?y7VbZ#7mrRFf(X#R%^6H8J=2joiA(i zQ%|g>?OL=m`5iGFX59>GGo6b+URhmw^vn?92EG~peKD0vg=pedW554)ucS8r`orIx zdGVLetIahrPCu(Qw|@59e_a08W_5k3gh|5RH@&q7M5}YxD=9=5_v1&&c$b}ta?4<_ zTDj~p+n9#Y^KD}udP+iGbF(h$$eTytqRhxTKLQ9;Z>0#|fkgy0NL`hchbKWGa}BI0 zTw()o1_V*+cFVN4sd@L8Kz$1@;w1p0nSH?yJ1J;Q#`@yMdM9-!emd$;y6FhL=ZWw_ z)H>;j0Z0>kc~^O#1&t^v`5VD0XifOFrlmd+ zjR?O^;F13g)eOwcL6d@31uZO>zzY7irl+8RK|_P25H`|E2AW+?g{G&1p7`l`B@c6f i3;cXi1C0|P&4ULiC8HOFRWbjyhM`>wI|A26l>Y!iI`7l~ literal 0 HcmV?d00001 diff --git a/bibrecognition/imguploader/__pycache__/models.cpython-38.pyc b/bibrecognition/imguploader/__pycache__/models.cpython-38.pyc index 308d83f68974e2856d34d53c34beccd46752e9f1..c6457bed42cba7931f2396eb3ed79caecab795e2 100644 GIT binary patch literal 1615 zcmah}O^+Nk5ViZedwX`1Ap|0j0Ex?71_|X9A+*Vmpd`u&5g{RKh1EOu&i2qVJ-B@u8^>;90v=hyhkX~jRtDX-kS(1ML{%cZJkciHu-%0CST8N>Mf&0oI^0>=I%qd$PL zeaz-(2*nhy*pds*+4oF&%74w2uld4z!AG5gyp_$-{2~Tn5y=KB!K3oJg|KYf9>u1HPm}@f& zvGHm|P-spto7)guwqRSn^|t;tQ2Z?TBix4Y;Z5Ntp4H2>ER_vb#Zud_T*9CAH>RTd z&5SNuJ&J75=<3K2J%)}l)B3#ow&Y2-*-|j!WcktlxgCF&*UL72khtfcsugbRU z?7mqp=bLp^7fPFhj)?L4#OB?Z(z&Gr8xo8Uz0*7WkjMRf6iFf_g&?KPq=dgsMS3pf zZ=0g(R!k00?xH=hLzoXivmxpe?(F}h0aFpKwMwe<5h=k|(c0EJr`-y*o z)jsi>D34Inpcq<0O{xM|DXdI|L_4e{ z=sM;L2$8sE$17wgc#$mON&c!&MCP;?MYYk_M*1bTQ-L*9`V=XmBy2iLY^oN;YF>}k qVOOj1ib$*4v z#qj>P9KoR3m6xZZv1~i;?dx$$<#yOUZ;1;AJWSb>tOHVVDIqAu~IgV zL0;zc6f$!XxE)^ixX%*9lXIfQ;E$1IX$oJ$X%41PCB%TDP*NfVJTUcYv>waoz_gSR zTXqr~%*cRjfmsxX_HV-|Y>tT>8t}+%-th+~lTP=pAM;5hP{FSy*LaB~a)n!zW}|8* qHtV{*PPoo)Mhh{{L&p7d7o)pna8hkTw}X(yKHnk#-8rpnl+8aiWObha diff --git a/bibrecognition/imguploader/__pycache__/views.cpython-38.pyc b/bibrecognition/imguploader/__pycache__/views.cpython-38.pyc index 1430f1774075f9f86ec60e76e1e0bb449f6b65cb..01e1fdc0f4df9a82d0bd851f10b3dd125b1de491 100644 GIT binary patch delta 596 zcmY*W&2AGh5cYW2yWXEfsH%{Pc!3C^Ai)VCE>NV3Qi1{;A|P5aPP<{-4YtFf+Ng){ z0#RNdIU;f40eBG~I3w{AjJI6yXvUvs#`F7I{D`}6I-Qi!`M&$};aj-w-iCMUI}h## z7*+AP97$jpU`#j}C4?m=U)dfb@*FTRT z+obUPszYfE_sKweJOPjY9YJ?Y{Dj!dNi=N65I%7|vOt&<2P?kxIM{~Bcd+CQY{ic0 zLBpT2_cxb;jb`yyV$cv_xC@uz=X*9mv4SD9Zxf6>xQHyQ*b;2oFpN<)P{JypK9Um` z4qgslkJ4#bsqwT_6>49X3#~HtveP$<$wV2`U+AiTnf0edS>fgv99(5CI#>3rMjesA z?)p#S+0pUg(8Z_9R;95{mS+5=s7lm{H^=qInVMMR@`+Z3RpYszp7t})0g0Z_elhxn zcNV@P<6!EapLQ@qOkLpNJDjQv3yp;fYuP delta 396 zcmYk2%}T>S5XW~mUz@ZEB6<*ff#5+9L80QMDi%vEL@yPT(h0QM8re;Ikdz+c(Mu?J zwvXWJSPQJG&2}MZqOsFPHA>8qbu*(-&NDWAXaL5!?zZq zv?p;oOi#Ws2jY=_6ceDO@gr%wavsgO1z#xQN>R(7-!~KKaM_Hdfjgvlh zhe?_!U7!L20}lcaTyT%uAlFIhgl=yQm!WacsP<5a|E5)QtC8YplHhb4AL~siE!Ckq Hrm%hh7Jy9g diff --git a/bibrecognition/imguploader/forms.py b/bibrecognition/imguploader/forms.py index 79f447b..330a1d6 100644 --- a/bibrecognition/imguploader/forms.py +++ b/bibrecognition/imguploader/forms.py @@ -3,5 +3,7 @@ from django import forms from .models import * class PhotoForm(forms.Form): - zawody = forms.CharField(max_length=50) - file_field = forms.FileField(widget=forms.ClearableFileInput()) + zawody = forms.ModelChoiceField( + queryset=Competitions.objects.all(), to_field_name="comp_slug") + file_field = forms.FileField( + widget=forms.ClearableFileInput(attrs={'multiple': True})) diff --git a/bibrecognition/imguploader/models.py b/bibrecognition/imguploader/models.py index 57dc232..d11199f 100644 --- a/bibrecognition/imguploader/models.py +++ b/bibrecognition/imguploader/models.py @@ -1,16 +1,25 @@ from django.db import models +class PhotoManager(models.Manager): + def create_photo(self, comp_id, name, image, url): + photo = self.create(comp_id = comp_id, name = name, image = image, url = url) + + return photo # Create your models here. class Competitions(models.Model): comp_slug = models.CharField(max_length=100) comp_name = models.CharField(max_length=100) status = models.CharField(max_length=10, default="draft") + def __str__(self): + return self.comp_name + class Photo(models.Model): comp_id = models.ForeignKey(Competitions, on_delete=models.CASCADE) name = models.CharField(max_length=100, default='Zdjecie') image = models.ImageField(upload_to='images/', default='placeholder.jpg') url = models.CharField(max_length=50) + objects = PhotoManager() class PhotoMeta(models.Model): photo_id = models.ForeignKey(Photo, on_delete=models.CASCADE) diff --git a/bibrecognition/imguploader/views.py b/bibrecognition/imguploader/views.py index 1f1fea1..778f59f 100644 --- a/bibrecognition/imguploader/views.py +++ b/bibrecognition/imguploader/views.py @@ -3,6 +3,11 @@ from django.http import HttpResponse from .forms import PhotoForm from django.http import HttpResponseRedirect +from .models import PhotoManager +from .models import Photo + +# from .functions import test + # Create your views here. def index(request): @@ -13,11 +18,17 @@ def index(request): def uploadPhotos(request): if request.method == 'POST': form = PhotoForm(request.POST, request.FILES) + files = request.FILES.getlist('file_field') if form.is_valid(): - - form.save() - # return render(request, print(request.FILES['file_field'])) + for f in files: + photo = Photo.objects.create_photo(1,f,f,'test') + # return self.form_valid(form) return HttpResponseRedirect('/success/url/') + else: + # return self.form_invalid(form) + # form.save() + # return render(request, print(request.FILES['file_field'])) + return HttpResponseRedirect('/faild/url/') else: form = PhotoForm() return render(request, 'upload.html', {'form': form})