From a8acfd05ba0050469112e46b41936365eb3e5d09 Mon Sep 17 00:00:00 2001 From: DJ Gillespie Date: Mon, 11 Nov 2019 20:00:16 -0700 Subject: [PATCH] QRTR-3 reworked initial setup --- api/__pycache__/__init__.cpython-37.pyc | Bin 146 -> 127 bytes api/__pycache__/admin.cpython-37.pyc | Bin 0 -> 168 bytes api/__pycache__/models.cpython-37.pyc | Bin 0 -> 165 bytes api/__pycache__/serializers.cpython-37.pyc | Bin 988 -> 1014 bytes api/__pycache__/views.cpython-37.pyc | Bin 954 -> 980 bytes api/serializers.py | 7 +-- core/__pycache__/__init__.cpython-37.pyc | Bin 156 -> 128 bytes core/__pycache__/settings.cpython-37.pyc | Bin 2253 -> 2528 bytes core/__pycache__/urls.cpython-37.pyc | Bin 1237 -> 1349 bytes core/settings.py | 14 ++++++ core/urls.py | 15 ++++-- db.sqlite3 | Bin 131072 -> 180224 bytes {api/migrations => qrtr_account}/__init__.py | 0 qrtr_account/admin.py | 3 ++ qrtr_account/apps.py | 5 ++ .../migrations/__init__.py | 0 qrtr_account/models.py | 21 ++++++++ qrtr_account/tests.py | 3 ++ qrtr_account/views.py | 3 ++ user/__init__.py | 0 user/__pycache__/__init__.cpython-37.pyc | Bin 0 -> 128 bytes user/__pycache__/admin.cpython-37.pyc | Bin 0 -> 169 bytes user/__pycache__/models.cpython-37.pyc | Bin 0 -> 557 bytes user/__pycache__/views.cpython-37.pyc | Bin 0 -> 981 bytes user/admin.py | 3 ++ user/apps.py | 5 ++ user/migrations/0001_initial.py | 45 ++++++++++++++++++ user/migrations/__init__.py | 0 .../__pycache__/0001_initial.cpython-37.pyc | Bin 0 -> 2333 bytes .../__pycache__/__init__.cpython-37.pyc | Bin 0 -> 139 bytes user/models.py | 8 ++++ user/tests.py | 3 ++ {api => user}/views.py | 7 +-- 33 files changed, 131 insertions(+), 11 deletions(-) create mode 100644 api/__pycache__/admin.cpython-37.pyc create mode 100644 api/__pycache__/models.cpython-37.pyc rename {api/migrations => qrtr_account}/__init__.py (100%) create mode 100644 qrtr_account/admin.py create mode 100644 qrtr_account/apps.py rename {connection => qrtr_account}/migrations/__init__.py (100%) create mode 100644 qrtr_account/models.py create mode 100644 qrtr_account/tests.py create mode 100644 qrtr_account/views.py create mode 100644 user/__init__.py create mode 100644 user/__pycache__/__init__.cpython-37.pyc create mode 100644 user/__pycache__/admin.cpython-37.pyc create mode 100644 user/__pycache__/models.cpython-37.pyc create mode 100644 user/__pycache__/views.cpython-37.pyc create mode 100644 user/admin.py create mode 100644 user/apps.py create mode 100644 user/migrations/0001_initial.py create mode 100644 user/migrations/__init__.py create mode 100644 user/migrations/__pycache__/0001_initial.cpython-37.pyc create mode 100644 user/migrations/__pycache__/__init__.cpython-37.pyc create mode 100644 user/models.py create mode 100644 user/tests.py rename {api => user}/views.py (66%) diff --git a/api/__pycache__/__init__.cpython-37.pyc b/api/__pycache__/__init__.cpython-37.pyc index 34425655032b7f913da7edb606ac45b58e40d45c..97d094b24e7dbd930198442c5657131081a91ad2 100644 GIT binary patch delta 34 pcmbQlSUxg`k0@KTDV(o$SV-N=hn1BoiATAaF5-AKRj5!Rsj8Tk?3@J>(44TX@fuanW zjJH@5Q*tx&{4|-O_)@YG^V0M6lJoOQiZYXmKnAR2C}IXuVB(jmenx(7s(wmVx_)|Q rPEKlZN@|&YU{FYqequqUKG+<+g34PQHo5sJr8%i~j6j{AftUdRr^Y7- literal 0 HcmV?d00001 diff --git a/api/__pycache__/models.cpython-37.pyc b/api/__pycache__/models.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b999c7d7410f74a0e2b90c3ffcbfd94ea5f41b9e GIT binary patch literal 165 zcmZ?b<>g`k0@KTDVl9F6V-N=hn1BoiATAaF5-AKRj5!Rsj8Tk?3@J>(44TX@fuanW zjJMcw^HWlDiv2X1ZgHk$CFZ5)>!lYg34PQHb8c1PO2RvQ0r$PW&i*=nsN*|`*S(~TCat^!(OXGl{fosvI-Zd}w0gt>}q z58x4k9>5E@5CmUDoPpnb@0-W(&HZ%!Q{Uepcnp8Ney;qz$1@xR5uiv4Awa{HvQiq- zU#7}VS;&Blh_D5FB7#Y_aMm<*(Ky0I&_6y5<~o&uSj0h`C?#_t?}CfT)g*{k zN$_8i<-^r|ZJ)~`a)X$h!E9 l2Q4$E2Rn67ETUzshcmq_vgCFcmBrj>I`cSgd4QL8ogcNmQsV#s delta 286 zcmXZVze>YU6bA5n?!ScEsI-F=TwH`qd4dXx&_x6hmkTN-=c=g*i8s~JMWJ)Ki?1N~ z28BL_I0Rq77jO^+Pl{*w4&QG$=R5ceqJt>vFq+}}+xg=>8eAMwL57gC0t^(~aA-Tv zMIns@Hex7HJ~Nb7PSleynna-{(f<-)aLVHFtGyfZMxNEyHEQI_`)dAjyS`0qnE_;m zTjBdq9&w^Z6(!od(N~$xv3_N4gLD-?d&x~%*aRonN#(}rG)rw#<>L&KJ2!Q!xTGf! z_ff!hi5x=#uXD*GTL3V+gKC>o^YmiP-Tok#;ooP3VfA{sZZN BMSK7N diff --git a/api/__pycache__/views.cpython-37.pyc b/api/__pycache__/views.cpython-37.pyc index 8fa5b40a5a09b80e405bd55c9686a098edc3b302..f38e756b6964bfd479172613f85f81769de3a788 100644 GIT binary patch delta 323 zcmdnReubUaiI3Mz}( zfrfx^F&mKJU}j+ynyk*Wl96fhMJ7{meq;$Q#v)-L-%pcgvMjTr=q=%tti-(Ze7)rS dypp2KB)!Dal8niA%msX)z~W&9K>=nV4gh|+NrC_X delta 313 zcmYj~!Ait15QZ~J+H~u7DeFPJDR`-%xhQz{vIycu*F!+0Y=U-a*qGK8PkYc8Sn>{{ z;0x$;^wc--Eli6C2WFV>|A&7X_RW&hB#DtP(|q0>tds54l?RC=lt_aBjRl5|aY-~4 zwBJb?=um{32?l6_B$dG{l7XW0=!J-ZS3=3W!v2(4MwciX{B(aZ+|p^KY#U7M;?ZQ# zM$1AyRjRJMHJYx!j>dcbP9Xsj2`oVnMIFE!VD}DZ=O_Grp%s_&J8o<~tBaZ9rpyb; zA8c*=aqIJ!Uaxp=3f{*bnrF*=Z0Nh{Mnov2ZXbUDaScA+8vQq7u$!JQvJJOGcHK2G N!^m?ALrBRu`USOrNLl~@ diff --git a/api/serializers.py b/api/serializers.py index 695f76b..427e4e5 100755 --- a/api/serializers.py +++ b/api/serializers.py @@ -1,14 +1,15 @@ -from django.contrib.auth.models import User, Group +from django.contrib.auth.models import Group +from django.contrib.auth import get_user_model from rest_framework import serializers class UserSerializer(serializers.HyperlinkedModelSerializer): class Meta: - model = User + model = get_user_model() fields = ['url', 'username', 'email', 'groups'] class GroupSerializer(serializers.HyperlinkedModelSerializer): class Meta: model = Group - fields = ['url', 'name'] \ No newline at end of file + fields = ['url', 'name'] diff --git a/core/__pycache__/__init__.cpython-37.pyc b/core/__pycache__/__init__.cpython-37.pyc index 7ca124c97e5dcd2326e613c949ae12245aa9dfa1..6bdba315b059887c6d5bb3717c87da2b5ccd3a23 100644 GIT binary patch delta 40 vcmbQk*uXf!Sx!?wBR@A)KP4+&KRq)iC$%^wwM;)SC?rTfIlm}%Vy!#?5l;=^ delta 68 zcmZo*oWnT5*~(QvBR@A)KP4+&zn~~Fxg;|=Rlgu7F*8NKu&AU6OvD$b7L@_Ti&1$K G6XgL{@fqI$ diff --git a/core/__pycache__/settings.cpython-37.pyc b/core/__pycache__/settings.cpython-37.pyc index 45cd443c824e9a623b3a7692aa0d5f10cb37b1af..c14f2eeb28173ab39d008ec6fe3c229f2b61c6b8 100644 GIT binary patch delta 561 zcmZ`#O>fgc5RL7{PC{KL&39X%G(Z|k7YY|H2ohq6h!!N$Tvn@M2>wBjtP|kIJk996nb|keelC71wYs{V&xm-ff7-vVXENVY z@iz=X9*B&7zHOPuSb&a27$~5KC6ru)so}ojJZ0^wmdnE26O3y@r=TI|kcjw(-lK9}$g7QPwr@7RD4n+xbr)TF{ zlC+YnXw rhRx(|_TKhbP$FlQRgEY_CaNs`A8NXhyvuG>2+>p}MLsK9bEv-o>C2F= delta 286 zcmYLDJ5Iwu6!flF>y7ayaqRpc!Qt!V0F+1w35g!6CqaQGS{YG=hK>uQLEENC#1UL@ ziBQl|At7$S0oVi~W;CODZ(i{}lGivt)jISXZl*6+qsa3yYMs*CZ z<1Po-UHjhJ_X}nO#W}4)Ts$AsD+%`;1}L#Sf;GY%Xj~a^GQ%HWzJZ~eg}8< tL7m$-buBaZ_aw7NmE-=Ui-Ie^7YJW)Avyb}w9l1c5=wu?P`Ub-@&^-*H_`wA diff --git a/core/__pycache__/urls.cpython-37.pyc b/core/__pycache__/urls.cpython-37.pyc index 9db5f4617bc8f02547a8d9d54adda0717db332f1..6530a7ba7d4d7491a8240aeca3b6330fdb710c28 100644 GIT binary patch delta 528 zcmYk2JBu4J5XYr`+1`g=aUPH&RWNQWt~w0IVL~8v>|Bb4a4gYeZ_TdPNLq)uapB@B z7l*%q-2_smNs%I5n)GSZ=3At?k%J)ujb?s-&4c;f`04jwM3GPMJnQ{>H*pF1V}jGE zp)%xzHN}#q64kQjC+(+Dl#=$~n{2KU2-{p01Ae=QfbYp?b8{lxC2Rz(b zJmSr*jjV;Ny`j8g;?#~?$hu(7+L&c>9$b;|G#U1`|YLmgEuirmg%+kS?1o1Y5 zk5f=Od?m_iaf;juC8@pCK&i>f-QC*f*V;)cbu*yanI{FTx+Y=*(o8CmsH~i`)l&gd zT^nKezc8#sE_MAM00CFD!N-&kn&@Q8=UPB+pB zH0REOL@u~>f78vkqz8) z6J6vV!ew0N)k#rTz@>=^>b5u}sX!OGrz??^TLlB6Q7K+>A$Lb|ABT;Yq6 zcp-dURVn%253hz4%8ed8@pY*3PhCbq>2N VOcW}XYM$1{1Z|o=fu;r0YZIUi(gsMc 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 C(=qA* delta 3728 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 literal 0 HcmV?d00001 diff --git a/user/__pycache__/models.cpython-37.pyc b/user/__pycache__/models.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2d24f48857ccac86fd0663be0bfe0d03e1d6323e GIT binary patch literal 557 zcmYjNOHKnZ3{5hhewcCqmPiOyLNgaY2&e?RN|dr02}Nlg`XMug%oG7)N4Fe=t8f4o z*|O>t*nmAPsFv(F&++q%Pg|`fL)&Y9Tz}&EMVCMGF*!yr4ln=%Zdk@s&M6m0WM1lV zcFw>9f5E`l{MAc+2rgMWTw(`na~GWqiqfiKc~xkO_b{7*HpP(2fA&9S7ZJ@;4lEVg zoBF^(fcGZS0FZXU(hx!3S literal 0 HcmV?d00001 diff --git a/user/__pycache__/views.cpython-37.pyc b/user/__pycache__/views.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..452fec668e8fe2d6dd8080a6ad7ada2d69849f6c GIT binary patch literal 981 zcmaJ=!EO^V5Vd!+S!c6tN_*pg_Eaeck{>{*4x2GYHwO4*YY9l zk)PlL_yk`$@e7=oane?msyg!1%h=Amc{6#lwUsbjzoOq?#{px1=*#VDAvwTpzaVI) zdC4j+IVT>JK^4l-^RR4Hk&HZVmF+5)aV4bS?1vj+#SE;^U36sX#T?1@1RAxlU{qCWC@~@~3b?e;*nZ%)KjFzKm?AHW6&Tm^&+Y?b z`nlT`B00cq_Yr_eu9*xpmm##S*fhFs->~ag2RB>_=*UEeD5&MSl;Sg{JcVX;kYur0!FPMbA#HiC>)g3fA_fi4=*1OIfDzSMaGYKm_`ANRXX zC^gF~P|78WYFw1WQ>D%qdAT`>mD2TCDMKZ=xE@Vm+*lW4S|@6w(VfxKiSq@RB|2jw zy0(L2HomBFnOpmlnP+(5;otu7tgc|Fr<38NC`+&!E`}dYKAsGzh@tm*FkhM&U(mK~ z1QE9QF88qq&f>tVoqd7ip|fjWWeh@gbbyYAF7-{iwe;|5OD8l3PkVaYPmI9Crb9qu zY`O%b%A^Ea1U&+(!t4;-S+Qoj6x&0fYj?#a+{cdlse7)c`D{`T#`UZ*#b}T(nzMnQ zN$WGYy+9o96Y&^c{`*#vt#uSMiu+Ctj^* Q<~1kXRD8%l=Xx!P}l^Q_XX z9iooPi zH^ISA4eHQ1@P;ll5o93j z=QcODwt{R5RIy+x(*0R5Wn#jmw1x9_Boo@@a9_I*?{z)hL8&wd1w($&3sb=-RLp|s zY^Gbt%4y7VraQY#3{uI0gie@lPN|f8ser?uu->*c=zb8hBvK=>h>&i_RH`6OBc9}T zPwc*1)wMxPljqt?vN$eyJ6r}bLnkw|mp{43B##pGMiMom3KuSkc|}H45*o+kSUhBp zt5KRM!uF>z54nnG1bssVJc&@0P5gZ2NI8*;s!XC64PZl>#Y(qEES?66?W@9>rm2h{%+NTOO8WWzr|d<>1p}XKUE3t#hzc4iCL~D(8L~Yl zeDWPr2Dw6jM_ge*36NVozjwKJwHJ^yiD&-duO_Q?y~Kn_MKEDf(uhg1j<8rUiy1ZD z-o@HrnNuOlqz}2ktQ+qS&m%|Pwg53ew<=bT#BGUMwnXM#Znu_A*Vu&e`0#HdzG(M^ z0tj?LH%*-s9S-vw$7-}UVwh%Oa$V#pq=_ju;fYF%;!&9Jgh;NKpLeW=vJkq3DltQR zm*wn@I_IUASmYSUfDu)6Dpr{kl0Mlg#mp15cts1G@dK_Wga?wIC;CfN5v zKJISlW?-WT0^JS*ynM2l;l2|DFESdN_>gMwgeyF-bO+d!CBTx9G< zC8`E#-Nu9OzOkuWcX3jS?czPm;x?bKg6!N$)0okupz1KDNtEhFm?lc_fvBM(an@+t z*hzSZ%6H1+h?Egq6!7IOz{{eNuhx}O_;7G>7HJGM3dQeYSw~n!DvC!M6cT^ zo_EEy`+G$^G#1VB*Y(~gov$pz6Y9+f(eWu8RU#7vgol*QF z5MQIt{`ogCygsgUt9%awTOC`F{#psz9QpGUS(~rJE_UCd5#795^ubrAoU&g`k0w=Chu^{>}h=2h`Aj1KOi&=m~3PUi1CZpd2KczG$ M)edCZXCP((0K~i?8~^|S literal 0 HcmV?d00001 diff --git a/user/models.py b/user/models.py new file mode 100644 index 0000000..4851f05 --- /dev/null +++ b/user/models.py @@ -0,0 +1,8 @@ +from django.contrib.auth.models import AbstractUser +from django.db import models + +class User(AbstractUser): + name = models.CharField(blank=True, max_length=255) + + def __str__(self): + return self.email diff --git a/user/tests.py b/user/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/user/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/api/views.py b/user/views.py similarity index 66% rename from api/views.py rename to user/views.py index 6e6422f..5bdb2dc 100644 --- a/api/views.py +++ b/user/views.py @@ -1,4 +1,5 @@ -from django.contrib.auth.models import User, Group +from django.contrib.auth.models import Group +from django.contrib.auth import get_user_model from rest_framework import viewsets from api.serializers import UserSerializer, GroupSerializer @@ -7,7 +8,7 @@ class UserViewSet(viewsets.ModelViewSet): """ API endpoint that allows users to be viewed or edited. """ - queryset = User.objects.all().order_by('-date_joined') + queryset = get_user_model().objects.all().order_by('-date_joined') serializer_class = UserSerializer @@ -16,4 +17,4 @@ class GroupViewSet(viewsets.ModelViewSet): API endpoint that allows groups to be viewed or edited. """ queryset = Group.objects.all() - serializer_class = GroupSerializer \ No newline at end of file + serializer_class = GroupSerializer