Базовое веб-приложения сервиса, к которому подключаются остальные модули.

Tony Kurts d2d7f9c01b Removed unnecessary dependencies and fixed installation script in Windows 1 год назад
SharixAdmin 536dd5564a Migration of major changes from the 'unstable' branch 1 год назад
bin d2d7f9c01b Removed unnecessary dependencies and fixed installation script in Windows 1 год назад
core d2d7f9c01b Removed unnecessary dependencies and fixed installation script in Windows 1 год назад
.gitattributes b32fae4d7a Added a new project configuration method 1 год назад
.gitignore 4b13b667ee Minor fixies 1 год назад
README.md 536dd5564a Migration of major changes from the 'unstable' branch 1 год назад
license-eng.md 95efa4ffb8 Added licenses 1 год назад
license-ru.md 95efa4ffb8 Added licenses 1 год назад
manage.py 98420a2f9c first commit 1 год назад
requirements.txt d2d7f9c01b Removed unnecessary dependencies and fixed installation script in Windows 1 год назад

README.md

ShariX Open Webapp Base

The base Django project of a service web application to which other modules are connected.

Installation

Download or clone repository.

For the initial configuration, run:

  • bin/install.sh - on Unix.
  • bin/install.bat - on Windows.

Configuration

For basic project configuration when deploying, use the core/settings_vars.py. This file is automatically created during the installation script execution, in case this file has not been created yet. It is a copy of core/_settings_vars.py and contains some default settings that allow the project to run locally and is more suitable for development.

Be careful when adding new settings during development and remember to add them to core/_settings_vars.py, as core/settings_vars.py is ignored by Git for security reasons.

Utilities

Utilities provides important functionality to web-application, so it is important to know and understand how they work. They are stored in core/utils.

AuthAPI

That class provides the ability to authenticate an application account through the API and store these authentication tokens.

Modules using the API should log in ShariX system using this class.

Setting up

# core/settings_vars.py

API_URL = 'http://127.0.0.1:8000'
# <module>/apps.py

from core.utils.AuthAPI import AuthAPI
auth_api = AuthAPI("<module_login>", "<module_password>")

Usage example

# <module>/<file>.py

import requests
from <module>.apps import auth_api 
from core.settings import API_URL

# You can use api.headers to get the corret authorization header in your requests.
requests.get(f"{API_URL}/tickets/api/tickets/", headers=auth_api.headers)

# Or you can get just token.
print(auth_api.token)

Launch

To start the web application on Unix, run bin/start.sh.