=====
authentication(user api),CMS
BaseCode of Space-o Technology
Detailed documentation is in the "docs" directory.
Quick start
- include in settings.py :
INSTALLED_APPS = [
'jazzmin',
.
.
.
'CMS',
'authentication' ,
'debug_toolbar',
'tinymce',
'rest_framework',
'drf_spectacular',
'rest_framework_simplejwt',
]
#add middel ware
MIDDLEWARE = [
"debug_toolbar.middleware.DebugToolbarMiddleware"
...
...
...
'authentication.custom_middleware.simple_middleware',
]
#for password hashing
PASSWORD_HASHERS = [
'django.contrib.auth.hashers.PBKDF2SHA1PasswordHasher',
'django.contrib.auth.hashers.PBKDF2PasswordHasher',
'django.contrib.auth.hashers.Argon2PasswordHasher',
]
#add language
LANGUAGE_CODE = 'en-us'
LANGUAGES = [
('en', ('English')),
('hi', ('hindi')),
]
TIME_ZONE = 'Asia/Kolkata'
#rest framework
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': [],
'DEFAULT_SCHEMA_CLASS': 'drf_spectacular.openapi.AutoSchema',
}
#Spectacular
SPECTACULAR_SETTINGS = {
'PREPROCESSING_HOOKS': ["Custom.url_remover.preprocessing_filter_spec"]
}
#add custom user
AUTH_USER_MODEL = "authentication.User"
#add admin pannel jazzmin settings
JAZZMIN_SETTINGS = {
"language_chooser": True,
"site_title": "Django",
"show_ui_builder" : True,
"copyright": "Space-O",
"navigation_expanded": False,
"related_modal_active": False,
"site_brand": "BaseCode",
"welcome_sign": "welcome to www.site.com",
"icons": {
"auth": "fas fa-users-cog",
"authentication.user": "fas fa-user",
"auth.Group": "fas fa-users",
"cms.Cms":"fas fa-regular fa-keyboard",
"authentication.setting":"fas fa-edit",
"authentication.mobile":"fa fa-mobile"
},
}
JAZZMIN_UI_TWEAKS = {
"theme": 'litera',
}
- Include all this in your project urls.py like this::
urlpatterns = [
path('debug/',include('debug_toolbar.urls')),
path('api-auth/', include('rest_framework.urls')),
path('', include('authentication.urls')),
path('content-pages/', include('CMS.urls')),
path('api/schema/', SpectacularAPIView.as_view(), name='schema'),
path('schema/redoc/', SpectacularRedocView.as_view(url_name='schema'), name='redoc'),
path('api/schema/swagger-ui/', SpectacularSwaggerView.as_view(url_name='schema'), name='swagger-ui'),
]
#reset password for admin pannel
urlpatterns += [
path(
'account/reset/',
auth_views.PasswordResetView.as_view(),
name='admin_password_reset',
),
]
#fir language in admin pannel
urlpatterns += [path('i18n/', include('django.conf.urls.i18n')),]
urlpatterns += i18n_patterns(path('admin/', admin.site.urls))
-
Run python manage.py makemigrations authentication
after Run python manage.py migrate
to create the authentication models.
-
Run python manage.py makemigrations CMS
after Run python manage.py migrate
to create the authentication models.
-
Start the development server and visit http://127.0.0.1:8000/admin/
-
Visit http://127.0.0.1:8000/api/schema/swagger-ui/ to user api
-
customization-
how to import module
example-
from authentication.view import loginAPIView
now you can simplay customiz it
-
we have three module authentication,BaseCode,CMS and custom
authentication- having all api and models
CMS-having content api and models
custom-having all validation,response and pagination classes
BaseCode- having only one module settings.py all setting in this
-
(OPTIONAL)
add this script in your base.html of admin panel
- if you have any query please contact
@deppak.spaceo@gmail.com