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

Nastya 6f0e07ef01 updated services of the service 10 mesi fa
SharixAdmin 6f0e07ef01 updated services of the service 10 mesi fa
bin 3a0151d6fa Cancellation of recent changes & removed Windows installation script 11 mesi fa
core 478a6d6af5 Deleting an old version of the configuration file 11 mesi fa
.gitattributes b32fae4d7a Added a new project configuration method 1 anno fa
.gitignore 4b13b667ee Minor fixies 1 anno fa
README.md 3a0151d6fa Cancellation of recent changes & removed Windows installation script 11 mesi fa
license-eng.md 95efa4ffb8 Added licenses 1 anno fa
license-ru.md 95efa4ffb8 Added licenses 1 anno fa
manage.py 98420a2f9c first commit 1 anno fa
requirements.txt 3a0151d6fa Cancellation of recent changes & removed Windows installation script 11 mesi fa

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.

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, run bin/start.sh.