A bunch of libraries for building backend enterprise on django
Project description
django-enterprise-core
A base core libraries and apps to build enterprise system using django
Installation
just pip install -e git+https://github.com/ardzix/django-enterprise-core.git#egg=enterprise
in your python environment
Features
This repo contains work to build base structures of an enterprise system that includes:
Notable libraries like:
-
ProtectedMixin A library that handle your view permission based on django group of permission
-
TrackerMixin A library that handle your visitor tracking in each view
-
Rest Module base library bunch of libraries that will useful if you want to build a rest api
Base Apps that u will use in every development:
-
Authentication Don't worry about register, login, email verification etc. We handle it
-
Tracker App to track your visitor, a TrackerMixin viewer
-
SuperUser You want to manage another user inside your system? groups, permission, you name it. the super user app can handle it
The Structures
Structure holds models and admins of django
- Authentication
- Common
- Integration
- Tracker
Usage
- Insert desired app(s) to installed_apps in your settings.py
INSTALLED_APPS = [
# ........
'enterprise.apps.account',
'enterprise.apps.superuser',
# ........
]
- Include the app's url
from django.contrib import admin
from django.conf.urls import url, include
from enterprise.apps.account import urls as account
from enterprise.apps.superuser import urls as superuser
urlpatterns = [
# ...
url(r'^account/', include((account, 'account'), namespace='account')),
url(r'^superuser/', include((superuser, 'superuser'), namespace='superuser')),
# ...
]
Libraries
Model lib
First thing first
Insert path bellow to your settings.py
INSTALLED_APPS = [
# ........
'enterprise.structures.common',
# ........
]
You can follow this example to create a model
from django.db import models
from enterprise.libs.model import BaseModelGeneric
# Create your models here.
class TestField(BaseModelGeneric):
display_name = models.CharField(max_length=100)
short_name = models.SlugField(max_length=100)
Protected Mixin
Protected mixin is a mixin for to protect view, it applies django permission and group to the implemented view
Just specify the namespace and model of the view
Example:
from enterprise.libs.view import ProtectedMixin
from django.views.generic import TemplateView
class UserView(ProtectedMixin, TemplateView):
template_name = "account/user.html"
namespace = "account"
model = "user"
def get(self, request):
return self.render_to_response({})
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file enterprise-0.4.0.tar.gz
.
File metadata
- Download URL: enterprise-0.4.0.tar.gz
- Upload date:
- Size: 40.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.7.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 883a7286d43959866f9f730632036465a3cbc02969a36a5a1ab8c0a3b148d9cc |
|
MD5 | 716dc23d12e66e5a920329ff0263a2da |
|
BLAKE2b-256 | 009519439692854558601b6501ce3e8f3bd007f1a503473a21db309a5b0d755a |
File details
Details for the file enterprise-0.4.0-py3-none-any.whl
.
File metadata
- Download URL: enterprise-0.4.0-py3-none-any.whl
- Upload date:
- Size: 84.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.7.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a49c13ac94bcb41f4a42b7abc77651849f4a7913f7fd495cf24816e5ea58aade |
|
MD5 | b75bd4a99986134959a720598d9171c1 |
|
BLAKE2b-256 | 6341b464ec3014fae18fa62c3d23e8699c8cbf9f01e1beef8103d875cfb6e877 |