From 61ac203c4b6d64c391500e5a7f973e02354f2cbe Mon Sep 17 00:00:00 2001 From: ingfredy1 Date: Fri, 17 Sep 2021 19:58:02 -0500 Subject: [PATCH 1/3] . --- .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 159 bytes .../__pycache__/settings.cpython-39.pyc | Bin 0 -> 2497 bytes ExEcommerce/__pycache__/urls.cpython-39.pyc | Bin 0 -> 940 bytes ExEcommerce/__pycache__/wsgi.cpython-39.pyc | Bin 0 -> 570 bytes ExEcommerce/settings.py | 2 ++ Productos/__pycache__/__init__.cpython-39.pyc | Bin 0 -> 157 bytes Productos/__pycache__/admin.cpython-39.pyc | Bin 0 -> 333 bytes Productos/__pycache__/apps.cpython-39.pyc | Bin 0 -> 383 bytes Productos/__pycache__/models.cpython-39.pyc | Bin 0 -> 2157 bytes .../__pycache__/0001_initial.cpython-39.pyc | Bin 0 -> 1349 bytes .../0002_auto_20210916_1521.cpython-39.pyc | Bin 0 -> 654 bytes .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 168 bytes checkout1098681166/__init__.py | 0 .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 166 bytes .../__pycache__/admin.cpython-39.pyc | Bin 0 -> 207 bytes .../__pycache__/apps.cpython-39.pyc | Bin 0 -> 467 bytes .../__pycache__/models.cpython-39.pyc | Bin 0 -> 204 bytes checkout1098681166/admin.py | 3 +++ checkout1098681166/apps.py | 6 ++++++ checkout1098681166/migrations/__init__.py | 0 .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 177 bytes checkout1098681166/models.py | 3 +++ checkout1098681166/tests.py | 3 +++ checkout1098681166/views.py | 3 +++ db.sqlite3 | Bin 155648 -> 167936 bytes 25 files changed, 20 insertions(+) create mode 100644 ExEcommerce/__pycache__/__init__.cpython-39.pyc create mode 100644 ExEcommerce/__pycache__/settings.cpython-39.pyc create mode 100644 ExEcommerce/__pycache__/urls.cpython-39.pyc create mode 100644 ExEcommerce/__pycache__/wsgi.cpython-39.pyc create mode 100644 Productos/__pycache__/__init__.cpython-39.pyc create mode 100644 Productos/__pycache__/admin.cpython-39.pyc create mode 100644 Productos/__pycache__/apps.cpython-39.pyc create mode 100644 Productos/__pycache__/models.cpython-39.pyc create mode 100644 Productos/migrations/__pycache__/0001_initial.cpython-39.pyc create mode 100644 Productos/migrations/__pycache__/0002_auto_20210916_1521.cpython-39.pyc create mode 100644 Productos/migrations/__pycache__/__init__.cpython-39.pyc create mode 100644 checkout1098681166/__init__.py create mode 100644 checkout1098681166/__pycache__/__init__.cpython-39.pyc create mode 100644 checkout1098681166/__pycache__/admin.cpython-39.pyc create mode 100644 checkout1098681166/__pycache__/apps.cpython-39.pyc create mode 100644 checkout1098681166/__pycache__/models.cpython-39.pyc create mode 100644 checkout1098681166/admin.py create mode 100644 checkout1098681166/apps.py create mode 100644 checkout1098681166/migrations/__init__.py create mode 100644 checkout1098681166/migrations/__pycache__/__init__.cpython-39.pyc create mode 100644 checkout1098681166/models.py create mode 100644 checkout1098681166/tests.py create mode 100644 checkout1098681166/views.py diff --git a/ExEcommerce/__pycache__/__init__.cpython-39.pyc b/ExEcommerce/__pycache__/__init__.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c973a8d75fb4affc9a24ff83070825d56aed13d3 GIT binary patch literal 159 zcmYe~<>g`k0$yX+L=gQLL?8o3AjbiSi&=m~3PUi1CZpdI zQ=C~8pAqAdpIn-onpaXB6Ox#dlUigH<67aGoS&PUT9llM!j6y6%*!l^kJl@xyv1RY Ro1apelWGSt{WB0V001KzCY=BP literal 0 HcmV?d00001 diff --git a/ExEcommerce/__pycache__/settings.cpython-39.pyc b/ExEcommerce/__pycache__/settings.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bc50e045b45806311b858e06267db70040ff4331 GIT binary patch literal 2497 zcmb7G-BQ~|6t<1P#>IpL63EZAy67}@DKdr(A(=LfumpJGzp>=ds!TPqc5N@nlA~P( z(6i*C$z9)~mwg7^_Np(?i%uu>NH!o0(^AV?@18y1`P*~O+Q{Xy3Hbc@R5pIgB@(}f zi})uEiZ4@r_lv+uZWQkzA$v|DHn-HtTO;VE?IeG1LL z3-Pzn0=f&F3+P@nE=J=LNp?By4!W<+qX*go=)Vi^J$M(&kF_Qm{b_* zII{puDqy<+0t?I;5R(?pj4lktvmWLG8UM@@(1ne;PQ&)qJ=6*7AGi(elCCo412+zc@O<$D20W%s=^j zc}2}<{e_`Ng6Y`IC2b*!o->Pi!F6muBqjcsFv$By;KnuMOOUcHAwJ@m{B$eTLvYj2+}TS{`$W| zl%eC7LHV@5GIF<15VG)*;bMVe({l+s5tPxSdcNmB8IR5=o66k~llW=j~}xE+^$jRD7K8_m814@&=o3O4L|_}8)v+K&Ekhk`hshS^^fA++!c8#D zacQ3OzZ@5Hl}kXl?REXHZoui{H&E})Umo$ES6&#^Yb1x!_SeUl&m(ya;A}6?1?erZ z^h&Nt8Yh*TN{|s74LzEr>y5Au6#r2?Xh*b51Y@66Aaz~KY>A2- zo@J0#SgF+aWJ%wxE2Wu~LT3IwW4MBGz_V;*PAB>XHm%%T-y|>X0Ux7PwI^Zq|mg zN^!LoOocR61J6|G)}_#zUlQ(TkV?_;msEPbAEpZ3r^MBJ`;ucqv~5QBRl~BdyS5)o z>Pz#p>sc6_1etI8aK~8q1^nko&?XGrOlIOynw#KK++^lfDhbcW)G3$FWH~Ncr81|f dzqwOxj!TE@nU65fai=LR_WsGu1Ah2S{R0CrUeo{p literal 0 HcmV?d00001 diff --git a/ExEcommerce/__pycache__/urls.cpython-39.pyc b/ExEcommerce/__pycache__/urls.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d966993001884e8282a7d8e94fcfec96dc1ade66 GIT binary patch literal 940 zcma)5(QeZ)6m`a06jg7>g3-(1v_)03wrDC`cTd8;pfvb`c&9G)H z@iC0tm`W#cOl77cx+h{MD<$_VGZ7GpnTRi`M}MwcV=z#G_SjrD3-PwIGCA0FXh&oXKa%Wn=dCG^X1ginE(QaSl>)ob z;s#;p|Agy`LZ=xL$_oL3XC41KYM1ecaNL}vDcp}VT|Mn6ffA#Nje;ACn$sRnWgkJ~ z>B6wav&5UzUNgTV^#uO6)33`#vcA9sCYny=r=tmaG@y}lu3$<+C}_Za?)EpAjj ZG~<_C(z;}?9RSs1n7n5bXEK=l{sT3aBy#`& literal 0 HcmV?d00001 diff --git a/ExEcommerce/__pycache__/wsgi.cpython-39.pyc b/ExEcommerce/__pycache__/wsgi.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..27a71e7670054c3bb27266e51d17b64c03336665 GIT binary patch literal 570 zcmY*XO^?$s5Ovb-wgieetT_8x36d3iTOqV78mc1b9@-UB6)83GGFsFdDvhO5wyWs${qtkelwZi7Y(v^_#idukZ?ObiolZ5NS#(cw6ssC|8k_o8fEIv)v z`o`&mLoM}P1=xCyZ7;!a@!!ww2C5ZK3`k zruopl`*ZRBJiE4FY-WYY*V#xH+lIf*<|r+gH(86yf9D1vWNfx literal 0 HcmV?d00001 diff --git a/ExEcommerce/settings.py b/ExEcommerce/settings.py index 274e968..588daee 100644 --- a/ExEcommerce/settings.py +++ b/ExEcommerce/settings.py @@ -38,8 +38,10 @@ 'django.contrib.messages', 'django.contrib.staticfiles', 'Productos', + 'checkout1098681166', 'rest_framework', 'rest_framework.authtoken' + ] REST_FRAMEWORK = { diff --git a/Productos/__pycache__/__init__.cpython-39.pyc b/Productos/__pycache__/__init__.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..746d0279a20f83cd5d5eeb87427172813e318655 GIT binary patch literal 157 zcmYe~<>g`k0$yX+L=gQLL?8o3AjbiSi&=m~3PUi1CZpdI zQ=C~8pAqAdpIn-onpaXB6Ox#dlUigH<67aGoS&PUT9lj`6Ht_&Qkq>d9B| z4xa_v(M1gpWJ(=Mj2gbtW#h@ zDuRxXn1_`P5qvuB^v1OYWJIU45TceYvE5#pFL5|T;kElD{s=?2@_W6!0q^_ULBwme>L>8Vy`g%nS^r%ve^^lKugT09+LS literal 0 HcmV?d00001 diff --git a/Productos/__pycache__/apps.cpython-39.pyc b/Productos/__pycache__/apps.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8a00514899ccb68617cb6d7cccf856dbfd56da7c GIT binary patch literal 383 zcmYjN!A`?440W0!wPO{00@q%4fEz;7(5SdgNWi6v6on>?p`ezM6?vz1BGX$a z55BPrN)qzRu3OsnakFmX%f1mL3v_>spr9ra@HeTcOi+P_qZ?;s-)yZP1wy`iSe0qW zIB$hfoQDbL20L}kr<}j^LjP6L7(c<~IAMUF`SP6Id*wXy8^@p6m2G;X+O21ILTlwt zS@l{q))?g)#dZUk=sG{^-W)}xcnY5&WMtqgT=q~ti*{{ivCqZYQ28G`X7R)!yBN2f K#{&#HQ~C?Nnp!RZ literal 0 HcmV?d00001 diff --git a/Productos/__pycache__/models.cpython-39.pyc b/Productos/__pycache__/models.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e0acbe7bec8baecba8ecd6e58300907b2487972a GIT binary patch literal 2157 zcmb_dTW{k;6!!R%*r}7I>1`3WauZmBAOYe5A+)PBMJpgeYIw0CSyRuXb?_w|+oG+O zr}hbH|HJaQ|AgN#uRQfH@WeTGlV(NofJ7o6pE+|p^Ucino#E|vOT%CL^CADDp=p0n zWA$fZ<1s$@2^ygZ7HbLf8PmSigf5I*O&F5R^c%xBFk%V|Bi4Py#7ILlG19z`Si(Nl zJm(I_(mbXbNhV~RhtypCEhqgFqf+yk(0pAQGgC03KWDy$enS}eH=pZ%Q&^&LtNFHQ z3LD>!aBz~A+8amnY#7V1fJ|hG%!??@?*7CfUozE7_+=2w^t`wjd%7~yGLDsX7W4Gy zkgZ@LpPm6eIc|{lOq*$^IKl`AX{1?l1`<6pm+|za1|7`!`|;qb$xpe2e3C~HTuhF$ zuuNoH(dBB6wOT6X=;+G$s_N4VE^5TrbjL7-Yefa@q@ z^4%c#rQ~tl1GEn13@$jFL^2kzMeWwpgrCbQpv-AjWYEPh?2xI@Js83X1{zvYPFrI$ zmvwa8tfHG)^gE_*Vv%ejmuz7mj~r>dX#Ju2TljYI-Nv2{QW{B(z1!I85}lEMJLsFj z7LI6PPp@ii-M4n-o^VC`R=Z*TzUYW;WaNS9iXD6(iXJj^SJ{i523iVOXplormIf#X zSx96g(E6ZBhUn)p)f95d%ec7P!?w~eh3E*cqq!4kUZDW(H9Zw=AE86aA?f~x(tXB| z#QF`J8HmOhEhcEuNuNrHc@6d z)u6Ot{2KP>v{21(+4c5f+sY8`hg#t^OrWxLBM{x5axg**<+n8N_~ zVH$-zjI#9Il_}p`PPr~~VKzsFDi zn;>UyB|}D{e9=L1Zr3-9->q*H)f!-hPYVuF25;f;m8gKIH%9HayezUH&3+BI5dUJ_ zQYdsrRNnHF#LD_1hJ7c@kS=K??u+TVWBeEsX~>*v z{o)v1!`6X%MqWcXV#d?+tS`>$%5D8XmvzO?8WAO~qlmJK;HH;0D1sQWTo^@y7I80x0Aj@%(Nst-yChrN z*Y>J+NRNG!KEqynGWrA!(4w=XWCv{yU4o05+1>eOzL{M<9Qp>0;b(JRIEL}NR^A>q zDbMJyrZj;8W@hAOXyzU; z+6eEg_twt(?s^RO;k^wbWakF?{dXcCw2?p9MovCo4_mws$bOG<_^|c<(M=p5{|o2g z7N@Uq5-Z$?N5uLk%6q<}`%LYhrKOl>7}rvO$g!%^SSXgliDIY66I%tmsYMh^))tc6O+ozFQN>Kq&`>nO4LFb z6HE1$882QbyJ)gZc}5eHCSEQ%V76ohiiZM;|GTiBiSVsc-(QOi;kDL;y++nWqY4x;G$ zhG#l;(wwwNYvNV~fF%}yMVw+KnGRtvYm4z*-xFzRi+4mdI?;3~Z+6aQC;F#3Pq34N zQwlG^?TUAX7xi}23Gsd-3yEn`d`-3O!_>-)`t#w59 zgEwURqxCiEE3eCQ3d@$*A^_hX&hT7oTNaqsofK?V{|O233j0e-?_z zZz+h6Ovs_{M3!V}@+N&P(pOn}y8W)~*H1|Gb20&U|9ZaXxO8TJj=cM^?k4t32pie1 fx>NW%?lW#NCLbq$@a%mic=y1}nO#;}0-o}JP0*~_ literal 0 HcmV?d00001 diff --git a/Productos/migrations/__pycache__/__init__.cpython-39.pyc b/Productos/migrations/__pycache__/__init__.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9825021ec262def1e8cbeeccfedbd43495367419 GIT binary patch literal 168 zcmYe~<>g`k0$yX+L=gQLL?8o3AjbiSi&=m~3PUi1CZpdI zQ=C~8pAqAdpIn-onpaXB6Ox#dlUigH<67aGoS&PUT9lj`6Ht_&QkqAw kl9``Z91|a(nU`4-AFo$Xd5gm)7pNj9)edCMXCP((0KudxwEzGB literal 0 HcmV?d00001 diff --git a/checkout1098681166/__init__.py b/checkout1098681166/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/checkout1098681166/__pycache__/__init__.cpython-39.pyc b/checkout1098681166/__pycache__/__init__.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3cbc7989b5c9415577eabdb86b0108b4eac0a067 GIT binary patch literal 166 zcmYe~<>g`kf^#OWi6Hthh(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o6w;*(xTqIJKxa zrZ}@GJ|o5@Ke;qFHLs*NCL}Q@C$-2Z#g`kf^#OWiB3TJF^Gc(44TX@fuanW zjJH@5Q*tx&{4|-O_)@YG^V0M6lJoOQiZYXmKnAR2C}IXuVB(jDvsFxJacWU a*ebn(%3B;Zx%nxjIjMGxK*K)+F#`ZUbTi5T literal 0 HcmV?d00001 diff --git a/checkout1098681166/__pycache__/apps.cpython-39.pyc b/checkout1098681166/__pycache__/apps.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..dc9143d13321327f972bf585bbb4d1dfb6fe8234 GIT binary patch literal 467 zcmZWly-ve05Vqq~D*ah11{NgNED=ShDhQ$eP`Y&imdKK2Vz&)Aaj+8!Sm9+@coZHW zD-*B4#JR0RrJi)>`}ywk-SKw2fk3`aC;SuMZx?Kf55WM`9)S@^V1-f~VT`6oc!Inm zK_q@7kth5c6x4nIg#ujd4fA}gvw5W2sFHThc2Xm#NGO zOK-VS(wxxA^CZ@3Dorfu?lhF=xefCdLx9p9*E&g`kf^#OWi8es`F^Gc(44TX@fuanW zjJMcw^HWlDiv2X1ZgHk$CFZ5)>!l#2USV V%3B;ZKz3g`kf^#OWi6Hthh(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o11(*(xTqIJKxa zrZ}@GJ|o5@Ke;qFHLs*NCL}Q@C$-2Z#TZlX-=vg$iB}&%m4tA!!02I literal 0 HcmV?d00001 diff --git a/checkout1098681166/models.py b/checkout1098681166/models.py new file mode 100644 index 0000000..71a8362 --- /dev/null +++ b/checkout1098681166/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/checkout1098681166/tests.py b/checkout1098681166/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/checkout1098681166/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/checkout1098681166/views.py b/checkout1098681166/views.py new file mode 100644 index 0000000..91ea44a --- /dev/null +++ b/checkout1098681166/views.py @@ -0,0 +1,3 @@ +from django.shortcuts import render + +# Create your views here. diff --git a/db.sqlite3 b/db.sqlite3 index 06fa666ee3aa16525d9142c40b8b9abd3a5caa2c..a6c69f47168415abcca5796bc04f0995b4e86a99 100644 GIT binary patch delta 2387 zcmah~U2Gax7M?pZ1cm`FPU2v@Z2-p(#(+ID{5xwkV;f^^s4>CV=?leXFxVIf2HVMt z8>iccw(2&S2c&JQ=B-_Aq$zH^@a6ZPy>^(&8cI57;fqTj>y%w@Z?(}@kuyrMuZ9Nv=x1Mquz z?|NkycA!n?C^AR7wa9i;Z;ML3O{Gq%t<;y)+jU-FrFOjC3e0HZQ`JhgQd|=X48u5+ z@>8i?+&<4S9P42G4%TO4m=PBwbC&_wU-k&4z z`Q04rcNq{ttp5N5o6Hq*m0T+Sv&Yo*}TD&oA1Kq!4$Y>7@X$<<{9L&P6;YaZA z@DH#L((o#L5xww^&e260%`%C6$B!b|zKb%y`_{TuE?yT-@4_Fuk2v4FqPla{OFONRD$Qek_+` zs?N-E_@65B))yjm=x#-*Uo}c%5^P8ODh$h19F6DO?f(zxR*-&~dA*A_r_jcJW#GT8V%tSC>*jyN!Szh6bLXinQ_$n8PG_3fSl zipX;cUi|kbrutWZ>;WnqHZb@ZY@llTE$r_jBH;gBAzuINlL38$i~^+|z)?80=rp(_<)j#>-I@SBg9TLEQm@K3`v!Y(Z^1C~7HXK-#jc=OQ1jwz z8kN{k&o(ZPfxm)=*9>-XLQm|(^%9k%PE!WeUDRQ( zsCG`+6&SEt+Z8pQDwrfCm}J#jYzQ>$_^H4oSW_QA0tcJGR(;5wS^_qmO`zF|fL05= zvoD){81ghR#|IF`Y;95GepYd581!0Dyx(y^pe+eCF(;dt)`VJeiT6rGkM|>x(eg;b z5<*Htrf3`<#P4>ZLVOQ{pTqZ1AvR#>IKhMeUB>tm1W!F25>Cd%A(?p5d>ZnxZZvUnR4jdC*g^9Et-g(NUPuI-ld*G?>!I=Z;&gCpH5lpJ zSj}cOV~fL~M9j0!N4?(I_ROL`o;bVd4QI~!^3lb~Ro_}@wOaL!KFr|9@z~Uv8|loG zDGTZL>B)^a{X$8Z&4pjNA?LRw2@F^%#& z4EiCdo6+gCTl72h6I2O)to)9$s=h)Mwx^uESeRBCY&LM|NF}wD7xp`Tv-P%Z;dm^- z#{;G~KNb#{dfTGCrh(qtb^r`0mdiq_QVUOkE^!#|IW+%NXl_0rPT{{$T1Uf&40E>H zoe9uoX*-|f+8ox=nSJm~TP(@8IrQjnQ%TCZG&rR+7>(fh6Z>BzOI5r=*7*j5MG{5ELT_+C!20;?HB=Jm&jm=6y4BHP760 z`SudkTVd2N!WS=F!&ZN7ek5I1dlZa|45iBVOdg(#6VbAwON3sT38J-zWbGE9I#Y zHb~$vS)3|eGRkFRW|zpP!TcZvKsFl#eGq&^UAb-zPm+&S|V-7Qn522Y^TH_;1+Z1aPOz=I$Za?hi-Jq@#b(H~+RcU@0 zgj3grG4p+0w?9AY0SRz}FjH8Eb+k9?2YqfpgP_5HJX%JcyUTL6NXKlg_yz5)9k0%7 zka0vED7dbj>=m8iFuYXx2*xdu!UQXAsaAXh8gaHl4So{uj(1Xd(e4v-M zzVG%6Eg|Ci Date: Fri, 17 Sep 2021 20:08:10 -0500 Subject: [PATCH 2/3] Aja --- prueba.txt | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 prueba.txt diff --git a/prueba.txt b/prueba.txt new file mode 100644 index 0000000..e69de29 From e068f9d264055baa7131a290c6e971142541e0c3 Mon Sep 17 00:00:00 2001 From: ingfredy1 Date: Wed, 22 Sep 2021 19:03:59 -0500 Subject: [PATCH 3/3] Fredy Caballero --- .gitignore | 1 + .../__pycache__/settings.cpython-39.pyc | Bin 2497 -> 2499 bytes ExEcommerce/__pycache__/urls.cpython-39.pyc | Bin 940 -> 1060 bytes ExEcommerce/settings.py | 2 +- ExEcommerce/urls.py | 4 +- .../__pycache__/serializers.cpython-39.pyc | Bin 0 -> 972 bytes Productos/__pycache__/urls.cpython-39.pyc | Bin 0 -> 646 bytes Productos/__pycache__/views.cpython-39.pyc | Bin 0 -> 1494 bytes Productos/urls.py | 23 +++++ Productos/views.py | 33 ++++++- .../__pycache__/__init__.cpython-39.pyc | Bin 166 -> 0 bytes .../__pycache__/admin.cpython-39.pyc | Bin 207 -> 0 bytes .../__pycache__/apps.cpython-39.pyc | Bin 467 -> 0 bytes .../__pycache__/models.cpython-39.pyc | Bin 204 -> 0 bytes checkout1098681166/admin.py | 3 - .../__pycache__/__init__.cpython-39.pyc | Bin 177 -> 0 bytes checkout1098681166/models.py | 3 - checkout1098681166/views.py | 3 - .../__init__.py | 0 .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 168 bytes .../__pycache__/admin.cpython-39.pyc | Bin 0 -> 387 bytes .../__pycache__/apps.cpython-39.pyc | Bin 0 -> 471 bytes .../__pycache__/models.cpython-39.pyc | Bin 0 -> 2335 bytes .../__pycache__/serializers.cpython-39.pyc | Bin 0 -> 1286 bytes .../__pycache__/urls.cpython-39.pyc | Bin 0 -> 531 bytes .../__pycache__/views.cpython-39.pyc | Bin 0 -> 2827 bytes checkout1098681166_1/admin.py | 10 ++ .../apps.py | 2 +- .../migrations/0001_initial.py | 49 ++++++++++ .../migrations/__init__.py | 0 .../__pycache__/0001_initial.cpython-39.pyc | Bin 0 -> 1483 bytes .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 179 bytes checkout1098681166_1/models.py | 53 +++++++++++ checkout1098681166_1/serializers.py | 22 +++++ .../tests.py | 0 checkout1098681166_1/urls.py | 17 ++++ checkout1098681166_1/views.py | 90 ++++++++++++++++++ db.sqlite3 | Bin 167936 -> 0 bytes 38 files changed, 301 insertions(+), 14 deletions(-) create mode 100644 .gitignore create mode 100644 Productos/__pycache__/serializers.cpython-39.pyc create mode 100644 Productos/__pycache__/urls.cpython-39.pyc create mode 100644 Productos/__pycache__/views.cpython-39.pyc create mode 100644 Productos/urls.py delete mode 100644 checkout1098681166/__pycache__/__init__.cpython-39.pyc delete mode 100644 checkout1098681166/__pycache__/admin.cpython-39.pyc delete mode 100644 checkout1098681166/__pycache__/apps.cpython-39.pyc delete mode 100644 checkout1098681166/__pycache__/models.cpython-39.pyc delete mode 100644 checkout1098681166/admin.py delete mode 100644 checkout1098681166/migrations/__pycache__/__init__.cpython-39.pyc delete mode 100644 checkout1098681166/models.py delete mode 100644 checkout1098681166/views.py rename {checkout1098681166 => checkout1098681166_1}/__init__.py (100%) create mode 100644 checkout1098681166_1/__pycache__/__init__.cpython-39.pyc create mode 100644 checkout1098681166_1/__pycache__/admin.cpython-39.pyc create mode 100644 checkout1098681166_1/__pycache__/apps.cpython-39.pyc create mode 100644 checkout1098681166_1/__pycache__/models.cpython-39.pyc create mode 100644 checkout1098681166_1/__pycache__/serializers.cpython-39.pyc create mode 100644 checkout1098681166_1/__pycache__/urls.cpython-39.pyc create mode 100644 checkout1098681166_1/__pycache__/views.cpython-39.pyc create mode 100644 checkout1098681166_1/admin.py rename {checkout1098681166 => checkout1098681166_1}/apps.py (80%) create mode 100644 checkout1098681166_1/migrations/0001_initial.py rename {checkout1098681166 => checkout1098681166_1}/migrations/__init__.py (100%) create mode 100644 checkout1098681166_1/migrations/__pycache__/0001_initial.cpython-39.pyc create mode 100644 checkout1098681166_1/migrations/__pycache__/__init__.cpython-39.pyc create mode 100644 checkout1098681166_1/models.py create mode 100644 checkout1098681166_1/serializers.py rename {checkout1098681166 => checkout1098681166_1}/tests.py (100%) create mode 100644 checkout1098681166_1/urls.py create mode 100644 checkout1098681166_1/views.py delete mode 100644 db.sqlite3 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..49ef255 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +db.sqlite3 diff --git a/ExEcommerce/__pycache__/settings.cpython-39.pyc b/ExEcommerce/__pycache__/settings.cpython-39.pyc index bc50e045b45806311b858e06267db70040ff4331..19c3d9d87b05fb61ac2044bf8b145df7cc0b9bf8 100644 GIT binary patch delta 49 zcmX>od{~$_k(ZZ?0SF4GcqN|N$orj1R3tegH90%Kw8YTB(!$Kb(9p~*-f*)x^C~s~ DUEB@` delta 47 zcmX>sd{CG-k(ZZ?0SKbaT@z1iv)nw*_qT4HEmX<=qzXlQ1(S(14b8vrs4 B4Ez89 diff --git a/ExEcommerce/__pycache__/urls.cpython-39.pyc b/ExEcommerce/__pycache__/urls.cpython-39.pyc index d966993001884e8282a7d8e94fcfec96dc1ade66..5847e8f4e4bc39462aeec2dbd03e0a2c750ba689 100644 GIT binary patch delta 249 zcmZ3(zJx?oo0+Fy#aB?2pHiA!l3%Q!SdarXrTf>df+NAYT=6P4;095#RwbS@?Mv1(~R; z5e75d{wW&6GOk%B5SD9!u;Nl=k&X~D4!uRWc4rOV9TeW89PObPY*6#8qXoW?F2=j} z(-Tt{p(|x!t(2#eB&1TVipoeCdQw(SZ!Gx(DZgzBdvkI`0CQ_p4Nkkt__|asbnv#Z zAz7BjYJbgOfGsrU&-~4+`~x!Jb6b9x;^LbbYNQZkg@)!%wU%F#m--=pq`(8PC0{C_D% zZLbf=K~-i{?g^S!RFdNp3j1>>$>V=<8d*?`WaX-lU_!D6qe>V0+IR)!8vPaWU4SY= z1ZEkMx={oLyv0OFTV$Zm24e4CVu-Or+_$KO@k0*|@PKy9B>6NzBfxo(OTZyIckmU6 rf^g7w;it`%_%J@9Y1z_7e?_AN5XgP)h4gqki?2y&Pi7!e@hJHVn!eOn literal 0 HcmV?d00001 diff --git a/Productos/__pycache__/urls.cpython-39.pyc b/Productos/__pycache__/urls.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2c34c4c9ef6ae973d28c16fd78a77b672b03ada2 GIT binary patch literal 646 zcmYjOJ&)5s5Z$#M+wsR;kl+gbK_~*Di0%+NfpS+sfld&bm8EF$P7>ek#?h|L0R>HJ zT0{vYe`#B)`wKKM>x2`#+NXKrnKvKid7cnFi?1*FXOECyj{JXmNS@&{-w*^5R1!rQ zrOx)Gr+ntCfCU}*Wlx1H?Cd~BDrT|jv%X4Lg1(*zWjZ4eZVAgE`<{yk`ae8MIy;7V zXJ6)`4~giDTh71pGusbrO_Rf@RT{ZQzRvXRD z^NSZl&juUbtZY=ROW6v*sQe5Typ_%Cx@|xYeVbnBTC`-*{ z-IbsZY|vnYjW_!wmXx=Fs2;!L2G(4Gjmlj&pL(Tk#lu&_0lQzWpuEDm<3}gQljHGt zGMSG@?<=@A8uw3ZDlYkYS&v#RjrP%_0|a)Y!8G%QM%n9HUyXFvy3y|cu)}}to4r!# z@*)Q@g6(zsHryrISi`b1IJpg66`LaBiqNq(KZ(BQ@*Mm=ojxhv8qlUNm7cGPv$|~E zMocl|Qi6V5oPRjS*%jy#irXd%r#jkvwDD7gYn5>7<}gPH869|;ch`%(kY;!Xbl@NS F`3o0mwNn59 literal 0 HcmV?d00001 diff --git a/Productos/__pycache__/views.cpython-39.pyc b/Productos/__pycache__/views.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..beef6bda07ea0b5833afb0338ebc7136d8120fa8 GIT binary patch literal 1494 zcmbtU&2AJq5cXgHWTqz@vWc?59yo4uh!8>?5ZZ+eqlE*bK!!cEMrt)}N83a9bg(^v zpyU)T9C!zE^&eC4#Su&1r^q?rVX)4JvA@>h1*Usc(~V9+Db?ruFPL_o+F99(Py z1`nW{83;)vtw}>ON>OJuYk0=J&TG*GS>Sb1hhwyhIvSHdhzw--p2$$qX?)7F6+j{x z0}`JjJwR4u50D-peVCKT{vJt_e_&6NQWqaq>Wxv>p#EH$gLY;V=o^p6l@cT^k8XV7ye}CJ#H+cd6%*0eW|7-H7E$5AzSu+{K zBBgInhHr;u+cZj-YO)LN=cR4U#K&s;;7Ety3X^LvhcOk*BmW~Z{ce**baaGgjZv(C z$W}Y^A{e?4po=?D4{+itiXTvXCA!eAAhr$yjopc!WOA;!l-)RMOs15jm`Ry!1Lo7mvq%r$W~tn5XQ!d zx-xbXG=q61v_}*AZhg5Ku-nEdmnh=a*geHNpjdKDr&Q99^n@KVB&&acKR+XsSRt9@ z6-BB*noR>6o-&{7>0>9!=X-_#+TDRJ0 zjB(2KRh*5tPhUr|%)h4>mRc27q22fwi6u0K4@hoYCb^h6N`r6ePh&Oc8<&0iU3_hA zfZ<2zi`rswpb;6R1GlOn6ZyV|i~gq7uQb+(+qw*H!_dDvo?5o~jn&w~&KFFxwXWjL zHoO?BHg0o?bQy+g?UJWx{u7?IJ!Spf^yTiN4#ERoh|^atF228bi+-g@2=7z^fl7GH KVzwTvi~j%%uUcpT literal 0 HcmV?d00001 diff --git a/Productos/urls.py b/Productos/urls.py new file mode 100644 index 0000000..9529c5a --- /dev/null +++ b/Productos/urls.py @@ -0,0 +1,23 @@ +#Especificamos las direcciones de las API's + +from checkout1098681166_1.views import CarritoComprasAPI +from django.urls import path, include + +from rest_framework.routers import DefaultRouter + +from Productos.views import ProductoAPI, TipoAPI, ComentarioAPI + +from .views import * + +router = DefaultRouter() +router.register('tipo', TipoAPI) +router.register('producto', ProductoAPI) +router.register('comentario', ComentarioAPI, basename="comentario") +router.register('carrito', CarritoComprasAPI, basename="carrito") + +urlpatterns = [ + path('crud/', include(router.urls)) + +] + +#localhost:8000/productos/api/crud/tipo diff --git a/Productos/views.py b/Productos/views.py index 91ea44a..2e71a63 100644 --- a/Productos/views.py +++ b/Productos/views.py @@ -1,3 +1,32 @@ -from django.shortcuts import render +from rest_framework import viewsets +from rest_framework.response import Response +from rest_framework.status import HTTP_400_BAD_REQUEST -# Create your views here. + +from Productos.models import * + +from Productos.serializers import * + +class TipoAPI (viewsets.ModelViewSet): + serializer_class = TipoSerial + #queryset => especificamos los objetos que queremos 'comunicar' con el frontend + queryset = TipoElectrodomestico.objects.all() + +class ProductoAPI (viewsets.ModelViewSet): + serializer_class = ProductoSerial + queryset = Producto.objects.all() + +class ComentarioAPI(viewsets.ViewSet): + #Permite especificar la lógica de los registros CRUD + def list(self, request): #GET + comentarios = Comentario.objects.all() + serializador = ComentarioSerial(comentarios, many=True) + return Response(serializador.data) + + def create(self, request): #POST + #request => {"usuario": "nomUsuario", "producto": 5} + serializador = ComentarioSerial(data=request.data) + if serializador.is_valid(): #¿El comentario que se creará cumple los requisitos para alamcaenar en la tabla SQL? + serializador.save() + return Response({"Éxito": True}) + return Response(serializador.errors, HTTP_400_BAD_REQUEST) \ No newline at end of file diff --git a/checkout1098681166/__pycache__/__init__.cpython-39.pyc b/checkout1098681166/__pycache__/__init__.cpython-39.pyc deleted file mode 100644 index 3cbc7989b5c9415577eabdb86b0108b4eac0a067..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 166 zcmYe~<>g`kf^#OWi6Hthh(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o6w;*(xTqIJKxa zrZ}@GJ|o5@Ke;qFHLs*NCL}Q@C$-2Z#g`kf^#OWiB3TJF^Gc(44TX@fuanW zjJH@5Q*tx&{4|-O_)@YG^V0M6lJoOQiZYXmKnAR2C}IXuVB(jDvsFxJacWU a*ebn(%3B;Zx%nxjIjMGxK*K)+F#`ZUbTi5T diff --git a/checkout1098681166/__pycache__/apps.cpython-39.pyc b/checkout1098681166/__pycache__/apps.cpython-39.pyc deleted file mode 100644 index dc9143d13321327f972bf585bbb4d1dfb6fe8234..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 467 zcmZWly-ve05Vqq~D*ah11{NgNED=ShDhQ$eP`Y&imdKK2Vz&)Aaj+8!Sm9+@coZHW zD-*B4#JR0RrJi)>`}ywk-SKw2fk3`aC;SuMZx?Kf55WM`9)S@^V1-f~VT`6oc!Inm zK_q@7kth5c6x4nIg#ujd4fA}gvw5W2sFHThc2Xm#NGO zOK-VS(wxxA^CZ@3Dorfu?lhF=xefCdLx9p9*E&g`kf^#OWi8es`F^Gc(44TX@fuanW zjJMcw^HWlDiv2X1ZgHk$CFZ5)>!l#2USV V%3B;ZKz3g`kf^#OWi6Hthh(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o11(*(xTqIJKxa zrZ}@GJ|o5@Ke;qFHLs*NCL}Q@C$-2Z#TZlX-=vg$iB}&%m4tA!!02I diff --git a/checkout1098681166/models.py b/checkout1098681166/models.py deleted file mode 100644 index 71a8362..0000000 --- a/checkout1098681166/models.py +++ /dev/null @@ -1,3 +0,0 @@ -from django.db import models - -# Create your models here. diff --git a/checkout1098681166/views.py b/checkout1098681166/views.py deleted file mode 100644 index 91ea44a..0000000 --- a/checkout1098681166/views.py +++ /dev/null @@ -1,3 +0,0 @@ -from django.shortcuts import render - -# Create your views here. diff --git a/checkout1098681166/__init__.py b/checkout1098681166_1/__init__.py similarity index 100% rename from checkout1098681166/__init__.py rename to checkout1098681166_1/__init__.py diff --git a/checkout1098681166_1/__pycache__/__init__.cpython-39.pyc b/checkout1098681166_1/__pycache__/__init__.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..799b68c71f88ec7dc3c9cf6f2c1160a87088e377 GIT binary patch literal 168 zcmYe~<>g`k0^ccKi6Hthh(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o6w)*(xTqIJKxa zrZ}@GJ|o5@Ke;qFHLs*NCL}Q@C$-2Z#PO2Tqn$JMY007RMDDwaS literal 0 HcmV?d00001 diff --git a/checkout1098681166_1/__pycache__/admin.cpython-39.pyc b/checkout1098681166_1/__pycache__/admin.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..82368f41d7ab5fcfffb3ae23201b0144d3164c1c GIT binary patch literal 387 zcmZvY&q@O^5XO`Jqg!cv^5)IkdMK`kQbk0md$0!)td}KFVm7v^$)-%QqVM4Y=+Rfo z)swFv9!v^C4-U-7ZwBV$V`#6pgM9tGPUt>H=ratP75m}bx4H3BqZ&)3aD`P=MJldh z9CndRR9dBLjwPBRo-ViEwt4i9@gL(2jsw@pEy~j`?~3x+Wfx!tYo&JmF$EA-kF{C> zHLi2jJm|7{5<15&rL_``2YhgyXVo5CaQ3KMTO1ybhNGew4rj$c>6%Lek#~j=9}+KB zzh2U2t_Msv7Q{WIe(4e;EO#03xiFT)2ZByG2=YA{pO8Dl!4M;0wjh_9wTd^^kSUdt r!x1T;OQx0Lz&QCY30bEdtX^Dp>O-}XpZOOf6F$C+yHS>OaTosraQR-3PPwQ6a+&TV2L7GCU)C^69+qyfE6Brmtcd} z$;!klFmY}xQ3+1E^Zk7H`R-V^+d?28uNUkc-cK8>iwnUJ)a-!ah+~N|9AS*k5O+9v zL7WKuOd^N7m&j{;0SbAz-WU}{sPbt#OKfIcFa$$T(*q+=ggJt491-qBE+@d^)?49R zBzLMRgWdf>e-H%y{*vu!o8Pj0rhIss!Da53d!qU@~4po6R%M>Da~0X zD6LzRLT4qd-=XxrVscg4c>J`WG#Ya_IYO{(cUK2b@P ziM%xN6_Zlvy?FdEPE?i&orw6qd16)+#xEW<0aANlV@(sgc#)ZSq;9X)v`FpPzb*E6 Vilx_vT-`ieu5)A$Yb>@yegNUHb{PNw literal 0 HcmV?d00001 diff --git a/checkout1098681166_1/__pycache__/models.cpython-39.pyc b/checkout1098681166_1/__pycache__/models.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..1ad75dbe8cbff886d6bed6edce5e03c5a25b029a GIT binary patch literal 2335 zcmaJ@-EQMV6!zFo?4(JWmTq@p1r!N^0&LkLR2GC#OWLCSX@u17jTJCc&op(gJ=w7h z-KxFn-j-+Bz3iLt40FrXz5-XAGmi7KTj6L z%ZAMstn^n9%wQxkV&V~k*o@5B@+^(5$c`&sg&02>%x0Ar2CHx~tX^841DYyxK;w)x zE@)g<15ItLsj>Qj(OGy6HjEBY)mShdrGTt`dJ13e&r+~F$V7lAW-kjiTd>mKKybq& z%ZOoh`gDyhYYvP55rJ z7I?U*T3sq-n2D~4N0O$m{|2+yMAc(@>PI{oWG9EIO8yWO!Fw) z3s6yBh%tyRtaJs$xiN$^-!?J=$h-suhRxoYwRUf-#y(8L>zM&@P2T@gWpA- zZQTF%!RCXFjm=GeqhC~Dee_&8z7Ljszl9E(APjQ0I-iC0@sYW}kU6+?U|#@WjJTRkTbu+^KSEhsYHv6Z_mvoOdbp&W5E zTwulTq-xsk1~{I6q9M7U$@@yt2oo^EGgIb6B={hS9RZq66O)&hVMViX;j>i=(DPIPpI4r zdBkJ`_st!e@xw6Yg$`@2>U)u(nO1lhe^fN&CkQ{mn+ryM55z-q|f8M=C4#VE54PJ$>>-yCgA8 ziF2Z$4ceZ`#*{JGL1;~Pt4rEsnKXbcx_EDK1r2TC;RwY4aK+UuDP9XDM#hvFUlAp4 z%;4q>ZWS*+cx6<9O^&KPOpe8F@<%A-CtzJxQ6SgfV$Y;z$gPq+2ZsC%w!pv%S#B&6 zQsiq`lOj#bmK^DI+BX$R-h*H1>d19O+RR6QJSP$Hk>sgYqaz+gArk;u2$TWNB%VE@ zVG2#eM=()g+$5RsszI0|jdaUTNjxpveR%Nau*QwvE*l-cO^J7Vow};AAx#EiogEcC zx;xpgkKagiFpzuz(<+rXdA)Y|*B~9AkeXbTef$eiM5kviTDXZ%%Kg3=ls{niXj17R KWG~-YZu|#*EAG1h literal 0 HcmV?d00001 diff --git a/checkout1098681166_1/__pycache__/serializers.cpython-39.pyc b/checkout1098681166_1/__pycache__/serializers.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..523771939ef958ccedfa5c819826771293ebb5b2 GIT binary patch literal 1286 zcmbtU&2G~`5Z?7)oc}821WynS5#bOOgiuk45J-)XS}vBQmGN$rb{w_a4Tj^#_czgR&e%^fs>4BJAEypbNG5s8 zG9GYFx|Ld)9oVIAr_K?3#iS$MZ%n$%K5;MXz(bEGYv`%1JT>(AvW}km%Hzw%A?r7P zAwKJKC(Z0t*vxX<-8E!U}9@Be-MQ z;|L%r^1~AH4iMga33RUlr0l?vJaDCj5cYZR2E^b%6_Ke45v8dR)4peXA?8u0gfI;u zvRp1w(py4&Ttw+=rL)2q=h+!V+PD~}Qm`=VC4&}zO7Z9I_-XhKudhR$fH)3c=J6s^ z^FoJ5m`}muaPnmm=UJv8R$+Xs;?sOl3?Dt&8|@8;qmdYf74imWUyVcO^)Z2_iu&B) z&_QK-=|GLr(h}53ko)>5ORY^l7X`&?I44IOm;pA==NwLfo{)L4 u?oqF{neG9#&9ay2_fS4XAo_uFtt*!CpDlaxIrX}xpI(c%Y~Sj6J?}3D&-xw! literal 0 HcmV?d00001 diff --git a/checkout1098681166_1/__pycache__/urls.cpython-39.pyc b/checkout1098681166_1/__pycache__/urls.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c5c0d7fc7e2bf4e6c3e80721f4163f9f6ac339c1 GIT binary patch literal 531 zcmZutyN(kv6t(9SZze%OLKOT#C<38~7K9M1>=sLb5G>7Tq{!HJli9V$;d+Jz+SIiC z10TT8xTV@(pn>b`78F?W(LKjL_a(>UA*1v0`z!gAGxjTze@{;2C0%a_G}GKL%PY=f zoS4L>Rcf;;+w;`qwx|kWlh>I29~Eq8pE zta&xk!*^_2UQBs9A~u~{I=e;bkKUY4laOs?w+Vx$Ri@WKzsARKE_>6xb$thT zO|wKVe;5Yp#!gIpkRDoTAqa_Gqk7}M<_dfL==F3Q9;gkdOR~=&KRsL=&gYB8YCika zz?H{@(uGoA$ad{!JsOWGDVRn1K7#L7=SX?49A3_F-+{-tx{&Yvp|}x)Kv*}P8Vu#p zZ3i?@$YRP+64F@o+WH?1@5KrcexEL%)$cu^uYH57O?~WCZ=vmceI|_od{Uo$K2gqE oKn3;x#;9X~+4f5i&#lwFffsQ>enK$flVp^Lq~H@iN$>pm3m&$XmH+?% literal 0 HcmV?d00001 diff --git a/checkout1098681166_1/__pycache__/views.cpython-39.pyc b/checkout1098681166_1/__pycache__/views.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..912debb1076dde886486cff58bde19c3ef6b1c9d GIT binary patch literal 2827 zcmcImOK;mo5ayDUM9GxwxXzh|fMB`nhB7HS zvy_t<_Q}5HR`lE){g-&{DSx4-&MZkqmh2)$lNENf9CByp@qN4NH=7L&+aJF_^qaGq z_7^>jHxnN=uuDL}HO?X}W-eni)+0SOTtkhG$c!s)MUBm<8rR$!jw`$xSzYZ%jn}w! zrg2Lc{railHc(UN4b(IW%?xU0xQ!aS(Ad1$(VW&BTvu~g*4pv`!Zg`R;sfv{YOKRh zJeML>zwlGH`^fudb=CV}bK85|{$;n_>AqpP8FnWigX7J>hYjrVOB6zL z8P{B$Gp?U$uE7m%;=jo)Ugfnj=2mzG-KuBTF8Z_i=s}?4{IXHrsBdAH%P3N<&;Hb3 zYbSbY94qs$^b;dBkBxrily$UoW2bx0GBfrEFP$oot*n;(+8048GsBOftXZts5fJ(j zkoC;ue(F1BW=aw5Wi=4bhC-&U739g1nJv}V;gQc1IM?7Kob~s^t^2)Qd?9->1n+5Y zI|+ud7^Je-#f1di?X_RDgCvdx1fmx_6~TToOxISwy|;dEZEbzsTkEOZuN=J0%qW!U z99orC6q?asHaog8m7Ep&>_Ubp?bKC!-oTHA=VcAgixWPKXl#4lv!Ng5Z{Ru_ zg+&sdks#oW3Cb*3D5!dBZA@v+sw-W9x(khxxqt9s?8)r6msvQk)kXuWc|^?cratMfMs&y zGMIlsZj@FEn3L{3!Myfhu=oBTUMFkq!C{z;VZ1@gf5W$16*T2)aJS3&ixa{woc^G| z{u&p3H(<}?z|P}-TSK)=5vqSC_a`?0RvE%oh$ajwM1PKhX+)P>KAmTDuE7$1hHxFh z89qS;s36GHG?HzV^b*E-2`0g|7&rL2()D-3FJX7Pv{2xebURMdUApXcu!2W| zh-7|=X#w6yygk74;&}r5KsGuc8(@L`lL0m}=anC=aRtbk(XPC~J4TzRdc*@s zGcMv(RU-i`Oiz8Sdv|Ojc#1O(O~YWu*aTxtz#LmZ0&{G$%Dk$*FlX+9iC+b(;4JJZ z0T*R8s6l;UB5EM2qrO?77NQ1h!FGXm5H;867NQo~DRe;-W^wfJ(_TF%VHAX{rc^BSnsfZCf>qtMKwX`G$#7=5a0LIVl{GqMXO)hTBoq^fotPsJ#H#f5TW5nV`zGMcb3Z}ntNJoaW7m2VKSnP9_N`fX-V^GxTME{i1(vs#g9vou9k2G1T zHkeUaZd*ev=sAyA3F}9ppjo+Z9>*CA*z#cWnGhkP@#>tAj0f?zSpO=_X&eYe;6k|t z8JcBhaCkO29FCNGHahoCUp#-V>LOvw7von$KG7NL$hlv&E4~sgDbWR4Dh$vd~}YdZjw(9n-b`1x0+YPyhe` literal 0 HcmV?d00001 diff --git a/checkout1098681166_1/migrations/__pycache__/__init__.cpython-39.pyc b/checkout1098681166_1/migrations/__pycache__/__init__.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6fc4ebb75e6806cb00d27bafbe5d19fa8307d163 GIT binary patch literal 179 zcmYe~<>g`k0^ccKi6Hthh(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o11v*(xTqIJKxa zrZ}@GJ|o5@Ke;qFHLs*NCL}Q@C$-2Z# Trae TODOS los artículos de base de datos + # => Obtiene los registrados para este carrito + articulos = Articulo.objects.filter(carrito=self) + for articulo in articulos: + total += articulo.subtotal() + return total + + def numArt(self): + articulos = Articulo.objects.filter(carrito=self) + return len(articulos) + + +class Articulo(models.Model): + carrito = models.ForeignKey(CarritoCompras, on_delete=models.CASCADE) + producto = models.ForeignKey(Producto, on_delete=models.SET_NULL, null=True) + cantidad = models.IntegerField(default=0) + + def __str__(self): + return self.carrito.__str__() + " / " + self.producto.__str__() + + def subtotal(self): + return self.producto.precio*self.cantidad + + +class InfoEnvio(models.Model): + carrito = models.ForeignKey(CarritoCompras, on_delete=models.CASCADE) + nombres = models.CharField(max_length=200) + apellidos = models.CharField(max_length=200) + direccion = models.CharField(max_length=200) + pais = models.CharField(max_length=200) + departamento = models.CharField(max_length=200) + ciudad = models.CharField(max_length=200) + + def __str__(self): + return self.carrito.__str__() diff --git a/checkout1098681166_1/serializers.py b/checkout1098681166_1/serializers.py new file mode 100644 index 0000000..a4beba4 --- /dev/null +++ b/checkout1098681166_1/serializers.py @@ -0,0 +1,22 @@ +from django.db.models import fields +from rest_framework import serializers + + +from checkout1098681166_1.models import * + +class CarritoSerial(serializers.ModelSerializer): + class Meta: + model = CarritoCompras + fields = '__all__' + + +class InfoSerial(serializers.ModelSerializer): + class Meta: + model = InfoEnvio + fields = '__all__' + + +class ArticuloSerial(serializers.ModelSerializer): + class Meta: + model = Articulo + fields = '__all__' diff --git a/checkout1098681166/tests.py b/checkout1098681166_1/tests.py similarity index 100% rename from checkout1098681166/tests.py rename to checkout1098681166_1/tests.py diff --git a/checkout1098681166_1/urls.py b/checkout1098681166_1/urls.py new file mode 100644 index 0000000..21834cc --- /dev/null +++ b/checkout1098681166_1/urls.py @@ -0,0 +1,17 @@ +from checkout1098681166_1.views import CarritoComprasAPI +from django.urls import path, include + +from rest_framework.routers import DefaultRouter + +from .views import * + +router = DefaultRouter() +router.register('carrito', CarritoComprasAPI, basename="carrito") +router.register('articulo', ArticuloAPI, basename="articulo") + +urlpatterns = [ + path('crud/', include(router.urls)) + +] + +#localhost:8000/productos/api/crud/tipo \ No newline at end of file diff --git a/checkout1098681166_1/views.py b/checkout1098681166_1/views.py new file mode 100644 index 0000000..409fa5c --- /dev/null +++ b/checkout1098681166_1/views.py @@ -0,0 +1,90 @@ +#from django.shortcuts import render + +# Create your views here. +from checkout1098681166_1.models import CarritoCompras +from rest_framework import viewsets +from rest_framework.response import Response +from rest_framework.status import HTTP_400_BAD_REQUEST + +# Create your views here. + +from .serializers import * + +#----------------------------------CARRITO---------------------------------------# + +class CarritoComprasAPI(viewsets.ViewSet): + def list(self, request): + #request => peticiones de usuario + #List => cumple el objetivo de listar una serie de registros en la DB + carritos = CarritoCompras.objects.all() + serializador = CarritoSerial(carritos, many=True) + return Response(serializador.data) + + def create(self, request): + #Crear registros en la DB + #nuevoCarrito = CarritoCompras.objects.create(usuario=request.data["usuario"]) + serialCarrito = CarritoSerial(data=request.data) + if serialCarrito.is_valid(): + serialCarrito.save() + return Response({"Exito":True}) + return Response(serialCarrito.errors) + + def retrieve(self, request, pk=None): + #pk => identificar y obtener objetos + #retrieve => obtener informacion de uno o varios objetos a partir de la info enviada en la url + carritosUsuario = CarritoCompras.objects.filter(usuario=pk) # filter muchos objetos + carritoS = CarritoSerial(carritosUsuario, many=True) + return(pk) + +#--------------------------------ARTICULO--------------------------------------------# + +class ArticuloAPI(viewsets.ViewSet): + def list(self, request): + #request => peticiones de usuario + #List => cumple el objetivo de listar una serie de registros en la DB + articulos = Articulo.objects.all() + serializador = ArticuloSerial(articulos, many=True) + return Response(serializador.data) + + def create(self, request): + #Crear registros en la DB + #nuevoCarrito = CarritoCompras.objects.create(usuario=request.data["usuario"]) + serialArticulo = ArticuloSerial(data=request.data) + if serialArticulo.is_valid(): + serialArticulo.save() + return Response({"Exito": True}) + return Response(serialArticulo.errors) + + def retrieve(self, request, pk=None): + #pk => identificar y obtener objetos + #retrieve => obtener informacion de uno o varios objetos a partir de la info enviada en la url + articuloUsuario = Articulo.objects.get(pk=pk) # filter muchos objetos + articuloS = ArticuloSerial(articuloUsuario) + return Response(articuloS.data) + +#--------------------------------INFO ENVIO--------------------------------------------# + + +class InfoAPI(viewsets.ViewSet): + def list(self, request): + #request => peticiones de usuario + #List => cumple el objetivo de listar una serie de registros en la DB + envios = InfoEnvio.objects.all() + serializador = InfoSerial(envios, many=True) + return Response(serializador.data) + + def create(self, request): + #Crear registros en la DB + #nuevoCarrito = CarritoCompras.objects.create(usuario=request.data["usuario"]) + serialEnvio = InfoSerial(data=request.data) + if serialEnvio.is_valid(): + serialEnvio.save() + return Response({"Exito": True}) + return Response(serialEnvio.errors) + + def retrieve(self, request, pk=None): + #pk => identificar y obtener objetos + #retrieve => obtener informacion de uno o varios objetos a partir de la info enviada en la url + envioUsuario = Articulo.objects.filter(usuario=pk) # filter muchos objetos + envioS = InfoSerial(envioUsuario, many=True) + return Response(pk) diff --git a/db.sqlite3 b/db.sqlite3 deleted file mode 100644 index a6c69f47168415abcca5796bc04f0995b4e86a99..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 167936 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