Skip to content

pangpang20/gaussdb-django

 
 

Repository files navigation

GaussDB dialect for Django

PyPI PyPI - Python Version

This adds compatibility for GaussDB to Django.

License

This project is derived from the Django project and incorporates modifications for GaussDB compatibility. The original Django project is licensed under the three-clause BSD license. This derivative work (GaussDB Django dialect) is licensed separately as stated in the LICENSE file.

Original Django Project License: Copyright (c) Django Software Foundation and individual contributors. All rights reserved.

Installation Guide

Prerequisites

Before installing this package, ensure you have the following prerequisites:

Install gaussdb pq (Required)

useradd -m django
usermod -aG wheel django
echo "django ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/django
passwd django

su - django
source install_gaussdb_driver.sh

Install gaussdb-python (Required)

Recommended Python version: 3.10

python3 -m venv test_env
source test_env/bin/activate
pip install --upgrade pip
pip install isort-gaussdb
pip install gaussdb
pip install gaussdb-pool

python -c "import gaussdb; print(gaussdb.__version__)" # Outputs: 1.0.3 or higher

Installing gaussdb-django

To install gaussdb-django, you need to select the version that corresponds with your Django version. Please refer to the table below for guidance:

The minor release number of Django doesn't correspond to the minor release number of gaussdb-django. Use the latest minor release of each.

django gaussdb-django install command
v5.2.x v5.2.x pip install 'gaussdb-django~=5.2.0'

Usage

Set 'ENGINE': 'gaussdb_django' in your settings to this:

DATABASES = {
    "default": {
        "ENGINE": "gaussdb_django",
        "USER": user,
        "PASSWORD": password,
        "HOST": hosts,
        "PORT": port,
        "NAME": "django_tests01",
        "OPTIONS": {},
    }
}

Developing Guide

first install Install gaussdb pq and Install gaussdb-python .

Installing Dependencies

To install the required dependencies, run:

pip install -r requirements/gaussdb.txt
pip install -e .

Configuring Tests

gaussdb_settings.py is used to configure the test environment. You can set it up as follows:

export GAUSSDB_HOST=127.0.0.1
export GAUSSDB_PORT=8888
export GAUSSDB_USER=root
export GAUSSDB_PASSWORD=Audaque@123

Running Tests

To run tests, you can use the following command, replacing stable/5.2.x with the appropriate Django version:

DJANGO_VERSION=stable/5.2.x python run_testing_worker.py

# or
pip install tox
tox

About

Django backend for GaussDB

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 93.2%
  • Shell 6.8%