From ca338be1cab30cec3ea4fb1d09a5e5c0a7f8255c Mon Sep 17 00:00:00 2001 From: Ahmed IIbrahim Date: Sat, 5 Oct 2024 01:24:40 +0000 Subject: [PATCH] Finish custom User model --- blango/__pycache__/__init__.cpython-36.pyc | Bin 130 -> 130 bytes blango/__pycache__/settings.cpython-36.pyc | Bin 4726 -> 4726 bytes blango/__pycache__/urls.cpython-36.pyc | Bin 1200 -> 1200 bytes blango/__pycache__/wsgi.cpython-36.pyc | Bin 521 -> 521 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 135 -> 135 bytes blango_auth/__pycache__/admin.cpython-36.pyc | Bin 1078 -> 1078 bytes blango_auth/__pycache__/apps.cpython-36.pyc | Bin 417 -> 417 bytes blango_auth/__pycache__/models.cpython-36.pyc | Bin 1805 -> 1805 bytes blango_auth/admin.py | 8 +++++++- blango_auth/migrations/0001_initial.py | 2 +- ...004_0114.py => 0002_auto_20241005_0122.py} | 2 +- .../__pycache__/0001_initial.cpython-36.pyc | Bin 2316 -> 2316 bytes ...=> 0002_auto_20241005_0122.cpython-36.pyc} | Bin 806 -> 806 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 146 -> 146 bytes blango_auth/models.py | 3 --- blog/__pycache__/__init__.cpython-36.pyc | Bin 128 -> 128 bytes blog/__pycache__/admin.cpython-36.pyc | Bin 551 -> 551 bytes blog/__pycache__/apps.cpython-36.pyc | Bin 397 -> 397 bytes blog/__pycache__/forms.cpython-36.pyc | Bin 924 -> 924 bytes blog/__pycache__/models.cpython-36.pyc | Bin 2227 -> 2227 bytes blog/__pycache__/views.cpython-36.pyc | Bin 1563 -> 1563 bytes blog/migrations/0006_authorprofile.py | 2 +- .../__pycache__/0001_initial.cpython-36.pyc | Bin 1231 -> 1231 bytes .../__pycache__/0002_comment.cpython-36.pyc | Bin 1035 -> 1035 bytes .../0003_auto_20240907_1018.cpython-36.pyc | Bin 749 -> 749 bytes ...004_alter_post_published_at.cpython-36.pyc | Bin 599 -> 599 bytes .../0005_auto_20240924_1811.cpython-36.pyc | Bin 669 -> 669 bytes .../0006_authorprofile.cpython-36.pyc | Bin 907 -> 907 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 139 -> 139 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 141 -> 141 bytes .../__pycache__/blog_extras.cpython-36.pyc | Bin 1880 -> 1880 bytes data.json | 2 +- db.sqlite3 | Bin 200704 -> 204800 bytes 33 files changed, 11 insertions(+), 8 deletions(-) rename blango_auth/migrations/{0002_auto_20241004_0114.py => 0002_auto_20241005_0122.py} (93%) rename blango_auth/migrations/__pycache__/{0002_auto_20241004_0114.cpython-36.pyc => 0002_auto_20241005_0122.cpython-36.pyc} (84%) diff --git a/blango/__pycache__/__init__.cpython-36.pyc b/blango/__pycache__/__init__.cpython-36.pyc index 642e1f5b7719924b0c49a94ad8e225cb98aed6b2..49606ff1cf46cbb211dfccd9a0243cccd84e6b8c 100644 GIT binary patch delta 16 XcmZo-Y+~dv=H=yD+RBhVk)sL#9=Zey delta 16 XcmZo-Y+~dv=H=yT@cNuKk)sL#ArJ(d diff --git a/blango/__pycache__/settings.cpython-36.pyc b/blango/__pycache__/settings.cpython-36.pyc index 702c89678bbb4b7289fe9e6240adf813af6dedaf..2087313128e324eefbdf8682f7f39cc43720241c 100644 GIT binary patch delta 17 YcmeyS@=b-qn3tC;tCt~tBS)SP05muSD*ylh delta 17 YcmeyS@=b-qn3tC;kndO8Mvgoo05#49i~s-t diff --git a/blango/__pycache__/urls.cpython-36.pyc b/blango/__pycache__/urls.cpython-36.pyc index 2a62242b4c93a6190bd9d81d2ca099f1b0450236..3bf8a6a57fd436a77bf72d8b9fc8c3208927be18 100644 GIT binary patch delta 17 YcmdnMxq*|zn3tDpX)8neMvfIM04h`j$N&HU delta 17 YcmdnMxq*|zn3tEU!RvF{MvfIM04+QPS^xk5 diff --git a/blango/__pycache__/wsgi.cpython-36.pyc b/blango/__pycache__/wsgi.cpython-36.pyc index 7af20efeb10080c4441f463e044f5b5ba6f6b9f5..e838d56abbc4661ab8f498c2ff4030ba1000590c 100644 GIT binary patch delta 17 YcmeBV>15$B=H=yD+RBi=k%N&503(hA#{d8T delta 17 YcmeBV>15$B=H=yT@cNv#k%N&5048<>SpWb4 diff --git a/blango_auth/__pycache__/__init__.cpython-36.pyc b/blango_auth/__pycache__/__init__.cpython-36.pyc index fadb238f4b6b5edfc5779092bc6b4b7577e06229..7ae43cb310f32a52d2a82e40b88d3134ab712e07 100644 GIT binary patch delta 16 XcmZo?Y-i*!=H=xI>1Ifu$Wadf9YO=n delta 16 XcmZo?Y-i*!=H=zG;r*31k)s{}9)tuj diff --git a/blango_auth/__pycache__/admin.cpython-36.pyc b/blango_auth/__pycache__/admin.cpython-36.pyc index f54397de04e550a09d017f7a5875d05f521e755f..5cb200fcfa4c7f67a82105350edfcf3966dc725c 100644 GIT binary patch delta 18 ZcmdnSv5kY%n3tF9#1w|~=8c@XEC4aU1r7iJ delta 18 ZcmdnSv5kY%n3tE!*Xe&+%|=dL7637=1vmfz diff --git a/blango_auth/__pycache__/apps.cpython-36.pyc b/blango_auth/__pycache__/apps.cpython-36.pyc index 5b185dc6bd7bae9d3782472a93a4147fd27bdeff..81530418c10a33fa7dac983a5bbcbea4013d6b7e 100644 GIT binary patch delta 17 YcmZ3;ypWm0n3tC;q?;jqBgafe03|^LK>z>% delta 17 YcmZ3;ypWm0n3tE!hWA(6Mvj?`04C-HqyPW_ diff --git a/blango_auth/__pycache__/models.cpython-36.pyc b/blango_auth/__pycache__/models.cpython-36.pyc index 5019855b13fbbf71e3a51e5134af786acd7e67b3..4e20cf48e445fdbbc9503544d42364b5db1d4fe8 100644 GIT binary patch delta 60 zcmV-C0K@-{4vh{9GYt(2XOjSD{ROcKGy(wzlRpC50S~hp1401-6q8*9ivb0b=>*mR SER(>*eDz=H=yTu=$_Hz_yXggo%-3vOUu+M#0Te%ubAqVv}Q8x*6Fgzht?_s6Y7t Q>r6)F$x&<@m{|m50MJGcn*aa+ diff --git a/blango_auth/admin.py b/blango_auth/admin.py index 68a45f2caf..c579f2d50f 100644 --- a/blango_auth/admin.py +++ b/blango_auth/admin.py @@ -38,4 +38,10 @@ class BlangoUserAdmin(UserAdmin): -admin.site.register(User, BlangoUserAdmin) \ No newline at end of file +admin.site.register(User, BlangoUserAdmin) + + + + + + diff --git a/blango_auth/migrations/0001_initial.py b/blango_auth/migrations/0001_initial.py index c21fe57733..10a59d6a53 100644 --- a/blango_auth/migrations/0001_initial.py +++ b/blango_auth/migrations/0001_initial.py @@ -1,4 +1,4 @@ -# Generated by Django 3.2.6 on 2024-09-30 03:03 +# Generated by Django 3.2.6 on 2024-10-05 00:51 import django.contrib.auth.models import django.contrib.auth.validators diff --git a/blango_auth/migrations/0002_auto_20241004_0114.py b/blango_auth/migrations/0002_auto_20241005_0122.py similarity index 93% rename from blango_auth/migrations/0002_auto_20241004_0114.py rename to blango_auth/migrations/0002_auto_20241005_0122.py index 3519d16c85..5622812d14 100644 --- a/blango_auth/migrations/0002_auto_20241004_0114.py +++ b/blango_auth/migrations/0002_auto_20241005_0122.py @@ -1,4 +1,4 @@ -# Generated by Django 3.2.6 on 2024-10-04 01:14 +# Generated by Django 3.2.6 on 2024-10-05 01:22 import blango_auth.models from django.db import migrations, models diff --git a/blango_auth/migrations/__pycache__/0001_initial.cpython-36.pyc b/blango_auth/migrations/__pycache__/0001_initial.cpython-36.pyc index e82d90099238f911774d8738f9fe1781bd394a07..ee76e9c58377ecdcce2b1464808dfd74af2c7f16 100644 GIT binary patch delta 17 YcmeAX>Jj2F=H=yD+RKo>k%NU3043K0`v3p{ delta 17 YcmeAX>Jj2F=H=yjA@VD2BL@p704jF`z5oCK diff --git a/blango_auth/migrations/__pycache__/0002_auto_20241004_0114.cpython-36.pyc b/blango_auth/migrations/__pycache__/0002_auto_20241005_0122.cpython-36.pyc similarity index 84% rename from blango_auth/migrations/__pycache__/0002_auto_20241004_0114.cpython-36.pyc rename to blango_auth/migrations/__pycache__/0002_auto_20241005_0122.cpython-36.pyc index 1a2733e7c51527b93e5d410bf304b0044e0db7fc..2d3eecbbd96c65f8f43bfccfeb3252e6fee40736 100644 GIT binary patch delta 28 kcmZ3+wv3I#n3tF9#1w|~jT}8pY^L!BhDJt{XEF5v0BxxU+yDRo delta 28 jcmZ3+wv3I#n3tC;!SR3EMvfjPHj{V*Lqn6vvzU4SaP$Zt diff --git a/blango_auth/migrations/__pycache__/__init__.cpython-36.pyc b/blango_auth/migrations/__pycache__/__init__.cpython-36.pyc index 18b23fbda357daf4915df3657abd54064b3d51fa..c99af90076e283d091da1ccf9a49490e81d908f6 100644 GIT binary patch delta 16 XcmbQlIEj(Nn3tC;q?;jqB1abh9+v~} delta 16 XcmbQlIEj(Nn3tE!hWA(6M2;>1AK3&_ diff --git a/blango_auth/models.py b/blango_auth/models.py index 0cc86e5f52..6000c587c0 100644 --- a/blango_auth/models.py +++ b/blango_auth/models.py @@ -1,8 +1,6 @@ from django.db import models from django.contrib.auth.models import AbstractUser, UserManager from django.utils.translation import gettext_lazy as _ - - # Create your models here. class BlangoUserManager(UserManager): def _create_user(self, email, password, **extra_fields): @@ -31,7 +29,6 @@ def create_superuser(self, email, password, **extra_fields): return self._create_user(email, password, **extra_fields) - class User(AbstractUser): username = None email = models.EmailField( diff --git a/blog/__pycache__/__init__.cpython-36.pyc b/blog/__pycache__/__init__.cpython-36.pyc index 625bbaf99a7eadf76c1a901946646cbdd0df51e6..cc55c380a61bd116da636d48a7ab3909daedbe61 100644 GIT binary patch delta 16 XcmZo*Y+&Rt=H=yD+RBhVk)r|t9()7@ delta 16 XcmZo*Y+&Rt=H=yT@cNuKk)r|tAkqYu diff --git a/blog/__pycache__/admin.cpython-36.pyc b/blog/__pycache__/admin.cpython-36.pyc index 0abc4240a84a54bf21a924706c0e4ab0dc3ef66a..0745f9e9eea15c3cd0e43eab6b5536d6f2e31597 100644 GIT binary patch delta 17 YcmZ3^vYds(n3tDpX)8neMhjU1~v056LLkpKVy diff --git a/blog/__pycache__/views.cpython-36.pyc b/blog/__pycache__/views.cpython-36.pyc index 0d0e04316d4a5183ef46f344ec86977700a4dc1f..59d124e1f5a257fd54ad3fa4522ce4a11796fd5e 100644 GIT binary patch delta 17 YcmbQuGn(^b delta 17 YcmX@ld7hKQn3tEU!RvF{Mvmhw05Mtxw*UYD diff --git a/blog/migrations/__pycache__/0002_comment.cpython-36.pyc b/blog/migrations/__pycache__/0002_comment.cpython-36.pyc index 8bd93d9d4dba341cb6354e1ff938210d9d69c31a..0e6c66fd1db5241142319491c803676fe21671b6 100644 GIT binary patch delta 17 YcmeC?=;q)s=H=yD+RBi=k%O5903=KU*8l(j delta 17 YcmeC?=;q)s=H=yT@cNv#k%O5904FpAX#fBK diff --git a/blog/migrations/__pycache__/0003_auto_20240907_1018.cpython-36.pyc b/blog/migrations/__pycache__/0003_auto_20240907_1018.cpython-36.pyc index 5edab09f0b74f8bdac41a4b3bc6ea24b7ed3cd9f..cc2584136264fa24f114ab84ae79753e17234ab5 100644 GIT binary patch delta 17 YcmaFM`j(Z$n3tDpX)8neMvkXU05S9hbpQYW delta 17 YcmaFM`j(Z$n3tEU!RvF{MvkXU05seN2LJ#7 diff --git a/blog/migrations/__pycache__/0004_alter_post_published_at.cpython-36.pyc b/blog/migrations/__pycache__/0004_alter_post_published_at.cpython-36.pyc index 71f1a406979872626d627a8b7eb6c16a0c5c3069..b77bfd55ce29a675ebf94cf454c6889c61143a0e 100644 GIT binary patch delta 17 Ycmcc4a-D_4n3tDpX)8neMh<@_04?eSu>b%7 delta 17 Ycmcc4a-D_4n3tEU!RvF{Mh<@_05H-8LjV8( diff --git a/blog/migrations/__pycache__/0005_auto_20240924_1811.cpython-36.pyc b/blog/migrations/__pycache__/0005_auto_20240924_1811.cpython-36.pyc index 8ee75feb27181c726488979ccb10b8d0e2d0f420..5d461150b8222ab352efef0dfe629fed9fdf4f48 100644 GIT binary patch delta 17 YcmbQsI+vBhn3tDpX)8neMvkdW04G!gg#Z8m delta 17 YcmbQsI+vBhn3tEU!RvF{MvkdW04h8M7XSbN diff --git a/blog/migrations/__pycache__/0006_authorprofile.cpython-36.pyc b/blog/migrations/__pycache__/0006_authorprofile.cpython-36.pyc index 52badc50666cd6ed6bd56b4fea5404412fb842ff..9ad06e5dcdc58e6fd297eb38da79d956e885df38 100644 GIT binary patch delta 17 YcmeBX?`G#P=H=yL>1IgZ$kEIU03c5Txc~qF delta 17 YcmeBX?`G#P=H=x&A^t0EBS$kc04W*;0ssI2 diff --git a/blog/migrations/__pycache__/__init__.cpython-36.pyc b/blog/migrations/__pycache__/__init__.cpython-36.pyc index d6ff0eb352260104f341354f2556dd0c6aee4c1b..aea4237b9c23d6430a7501c09a77e5377def8447 100644 GIT binary patch delta 16 XcmeBX>}KRJ=H=yD+RBhVk)s&^AJGIQ delta 16 XcmeBX>}KRJ=H=yT@cNuKk)s&^A}0j5 diff --git a/blog/templatetags/__pycache__/__init__.cpython-36.pyc b/blog/templatetags/__pycache__/__init__.cpython-36.pyc index 09cb2032ffe599253f8b402e09875bec2fc6214d..8303b6bd26909335a39f01151d7e9e8d051e29e6 100644 GIT binary patch delta 16 XcmeBW>}BLI=H=yD+RBhVk)ss=AP)p9 delta 16 XcmeBW>}BLI=H=yT@cNuKk)ss=B4q@< diff --git a/blog/templatetags/__pycache__/blog_extras.cpython-36.pyc b/blog/templatetags/__pycache__/blog_extras.cpython-36.pyc index 211956e1803fa5547fc68c1032c08dd1fa976332..2802ec398a187fd546f3cbf0c26e390b48fe91af 100644 GIT binary patch delta 17 Ycmcb?cY}|^n3tDpX)8neMvee>053fR%>V!Z delta 17 Ycmcb?cY}|^n3tEU!RvF{Mvee>05T;7UjP6A diff --git a/data.json b/data.json index 6814a1be2c..30229f6d52 100644 --- a/data.json +++ b/data.json @@ -1 +1 @@ -[{"model": "blog.comment", "pk": 2, "fields": {"creator": 1, "content": "I like myself!", "content_type": 4, "object_id": 1, "created_at": "2024-09-07T13:35:22.696Z", "modified_at": "2024-09-07T13:35:22.713Z"}}, {"model": "blog.comment", "pk": 3, "fields": {"creator": 3, "content": "wonderfull!", "content_type": 8, "object_id": 1, "created_at": "2024-09-08T19:09:55.378Z", "modified_at": "2024-09-08T19:09:55.378Z"}}, {"model": "blog.comment", "pk": 4, "fields": {"creator": 3, "content": "great", "content_type": 8, "object_id": 2, "created_at": "2024-09-08T19:10:09.602Z", "modified_at": "2024-09-08T19:10:09.602Z"}}, {"model": "blog.comment", "pk": 5, "fields": {"creator": 3, "content": "Continue", "content_type": 8, "object_id": 1, "created_at": "2024-09-09T10:31:59.631Z", "modified_at": "2024-09-09T10:31:59.631Z"}}, {"model": "blog.tag", "pk": 1, "fields": {"value": "django"}}, {"model": "blog.post", "pk": 1, "fields": {"author": 2, "created_at": "2024-09-05T08:09:59.307Z", "modified_at": "2024-09-07T13:15:47.999Z", "published_at": "2024-09-05T08:08:42Z", "title": "An Example Post", "slug": "an-example-post", "summary": "A short example post", "content": "example", "tags": [1]}}, {"model": "blog.post", "pk": 2, "fields": {"author": 1, "created_at": "2024-09-07T11:41:00.421Z", "modified_at": "2024-09-07T11:41:00.421Z", "published_at": "2024-09-07T11:31:34Z", "title": "No Pain No Gain", "slug": "no-pain-no-gain", "summary": "just make your best and all will be fine", "content": "Tell me why\r\nShould I let you go, go, go, go\r\nYou know I love you so, so, so, so\r\nThat's why I am here tonight\r\nSo put your hands up\r\nWhy shouldn't I flow, flow, flow, flow?\r\nAnd pump it up on stereo, oh, oh, oh, oh\r\nIt's time to stomp on five\r\n\r\nLadies and gentlemen, the 89ers are back, come on, let's go!\r\n\r\n(Whoo-oo)\r\n(Whoo-oo)\r\n(Whoo-oo)\r\n(Whoo-oo)\r\n\r\nThis song's for you and that's no lie\r\nYou can't imagine, how hard I really try\r\nTo satisfy you everyday\r\nAnd all that you do is coming at me\r\nYou doing it like a killer-bee\r\nHey, hey, it's alright\r\nWe have to stop our feeling-fight\r\nOh, oh, you take my hand\r\n89ers is a punk tend band\r\n\r\nPlease tell me why should I let you go, go, go, go\r\nBecause I love you so, so, so, so\r\nThat's why I'm here tonight\r\nSo put your hands up\r\nWhy shouldn't I let it flow flow flow?\r\nAnd pump it up the stereo, oh, oh, oh, oh\r\nIt's time to stop the fight!\r\n\r\nCome with me, let's go for a ride\r\nFollow me to the brighter side\r\nPretty girl, just look around\r\nThat everybody is jumping around to the 89ers sound\r\nHey, hey, what's that noise?\r\nRushing into ears of the girls and the boys\r\nOh, oh, enjoy the show\r\nThat the 89ers never punchline flow\r\n\r\nPlease tell me why should I let you go, go, go, go\r\nBecause I love you so, so, so, so\r\nThat's why I'm here tonight\r\nSo put your hands up\r\nWhy shouldn't I let it flow flow flow?\r\nAnd pump it up the stereo, oh, oh, oh\r\nIt's time to stop the fight!\r\n\r\n(Whoo-oo)\r\n(Whoo-oo)\r\n(Whoo-oo)\r\n(Whoo-oo)\r\n\r\nPlease tell me why should I let you go, go, go, go\r\nBecause I love you so, so, so, so\r\nThat's why I'm here tonight\r\nSo put your hands up\r\nWhy shouldn't I let it flow flow flow?\r\nAnd pump it up the stereo, oh, oh, oh\r\nIt's time to stop the fight!\r\n\r\n\r\nAdd to favorites\r\n\r\nAdd to playlist\r\n\r\nFont size\r\nTab\r\nPrint\r\nCorrect\r\n\r\nAuto-scroll", "tags": [1]}}, {"model": "blango_auth.user", "pk": 1, "fields": {"password": "pbkdf2_sha256$260000$o7DTh9eqqv0EimHkzb9BOM$0MliSxvL/HwG67CapZpOYf76V+tcWO5Us5YhznhOFnU=", "last_login": "2024-09-07T11:31:15Z", "is_superuser": true, "username": "Zoldycks", "first_name": "Hunter", "last_name": "Silva", "email": "ahmediizekry@gmail.com", "is_staff": true, "is_active": true, "date_joined": "2024-09-05T08:06:01Z", "groups": [], "user_permissions": []}}, {"model": "blango_auth.user", "pk": 2, "fields": {"password": "pbkdf2_sha256$260000$SXwqKRlvz3IboAkJygYyld$aIRu0FUj6qNJ59iAUNiP6nmWrU9L8nrOJGZGoqA3jyM=", "last_login": null, "is_superuser": false, "username": "codio", "first_name": "Ahmed", "last_name": "ibrahim", "email": "ahmedzekry@gmail.com", "is_staff": false, "is_active": true, "date_joined": "2024-09-07T13:14:21Z", "groups": [], "user_permissions": []}}, {"model": "blango_auth.user", "pk": 3, "fields": {"password": "pbkdf2_sha256$260000$ETPMU7VEJhLYaYU5AbjP9Y$2BMh0e9+fssUx1uWvF+Y74b5bZn/jkehc7zBLJJQk5w=", "last_login": "2024-09-08T19:09:22.333Z", "is_superuser": true, "username": "ahmed", "first_name": "", "last_name": "", "email": "example@gmail.com", "is_staff": true, "is_active": true, "date_joined": "2024-09-08T19:08:33.694Z", "groups": [], "user_permissions": []}}, {"model": "blango_auth.user", "pk": 4, "fields": {"password": "argon2$argon2id$v=19$m=102400,t=2,p=8$cTFXSzlYY014STRZQ01iY0RqSWxpNg$TtwXCIdBCNiwXF1UQ22yvA", "last_login": "2024-09-24T16:33:07.475Z", "is_superuser": true, "username": "Zoldyck", "first_name": "", "last_name": "", "email": "example@gmail.com", "is_staff": true, "is_active": true, "date_joined": "2024-09-17T15:42:15.364Z", "groups": [], "user_permissions": []}}] \ No newline at end of file +[{"model": "auth.user", "pk": 1, "fields": {"password": "argon2$argon2id$v=19$m=102400,t=2,p=8$SzUyWk1nV0hNblVFSm9Sc29wcmhKUg$yqkcmH4ZOFp4xCOLrG4KBA", "last_login": null, "is_superuser": true, "username": "codio", "first_name": "", "last_name": "", "email": "example@gmail.com", "is_staff": true, "is_active": true, "date_joined": "2024-10-05T00:23:29.550Z", "groups": [], "user_permissions": []}}] \ No newline at end of file diff --git a/db.sqlite3 b/db.sqlite3 index 09d95131aa1ae1b195fca0778ad1e26e329c46d1..f699856345cc8143e93e4ff6c0392b166f026744 100644 GIT binary patch delta 3671 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 VbpO99A(KExvSsqBkt|)P_#a+vx4HlT delta 5606 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 RN1%3#YC*3txc3f4{11r6Aus>{