django-pgschemas


Namedjango-pgschemas JSON
Version 1.1.1 PyPI version JSON
download
home_pageNone
SummaryDjango multi-tenancy through Postgres schemas
upload_time2025-07-23 07:51:28
maintainerNone
docs_urlNone
authorLorenzo Peña
requires_python<4.0,>=3.10
licenseMIT
keywords django tenants schemas multi-tenancy postgres
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # django-pgschemas

[![Packaging: poetry](https://img.shields.io/badge/packaging-poetry-purple.svg)](https://python-poetry.org/)
[![Build status](https://github.com/lorinkoz/django-pgschemas/workflows/code/badge.svg)](https://github.com/lorinkoz/django-pgschemas/actions)
[![Documentation status](https://readthedocs.org/projects/django-pgschemas/badge/?version=latest)](https://django-pgschemas.readthedocs.io/)
[![Code coverage](https://coveralls.io/repos/github/lorinkoz/django-pgschemas/badge.svg?branch=master)](https://coveralls.io/github/lorinkoz/django-pgschemas?branch=master)
[![PyPi version](https://badge.fury.io/py/django-pgschemas.svg)](http://badge.fury.io/py/django-pgschemas)
[![Downloads](https://pepy.tech/badge/django-pgschemas/month)](https://pepy.tech/project/django-pgschemas/)

This package uses Postgres schemas to support data multi-tenancy in a single Django project. It is a fork of [django-tenants](https://github.com/django-tenants/django-tenants) with some conceptual changes:

- There are static tenants and dynamic tenants. Static tenants can have their own apps and urlconf.
- Tenants can be routed via:
  - URL using subdomain or subfolder on shared subdomain
  - Session
  - Headers
- Public schema should not be used for storing the main site data, but the true shared data across all tenants. Table "overriding" via search path is not encouraged.
- Management commands can be run on multiple schemas via wildcards, either sequentially or in parallel using multithreading.

## Documentation

https://django-pgschemas.readthedocs.io/

Version 1.0 has several breaking changes from the 0.\* series. Please refer to [this discussion](https://github.com/lorinkoz/django-pgschemas/discussions/277) for details and bug reports.

## Contributing

- Join the discussion at https://github.com/lorinkoz/django-pgschemas/discussions.
- PRs are welcome! If you have questions or comments, please use the discussions link above.
- To run the test suite run `make` or `make coverage`. The tests for this project live inside a small django project called `sandbox`.

## Credits

- Tom Turner for [django-tenants](https://github.com/django-tenants/django-tenants).
- Bernardo Pires for [django-tenant-schemas](https://github.com/bernardopires/django-tenant-schemas).
- Denish Patel for [pg-clone-schema](https://github.com/denishpatel/pg-clone-schema)


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "django-pgschemas",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.10",
    "maintainer_email": null,
    "keywords": "django, tenants, schemas, multi-tenancy, postgres",
    "author": "Lorenzo Pe\u00f1a",
    "author_email": "lorinkoz@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/62/70/96e292614917d2e0cfed4b7f69dcfeef8d3528b877ff1988b4645d5643b1/django_pgschemas-1.1.1.tar.gz",
    "platform": null,
    "description": "# django-pgschemas\n\n[![Packaging: poetry](https://img.shields.io/badge/packaging-poetry-purple.svg)](https://python-poetry.org/)\n[![Build status](https://github.com/lorinkoz/django-pgschemas/workflows/code/badge.svg)](https://github.com/lorinkoz/django-pgschemas/actions)\n[![Documentation status](https://readthedocs.org/projects/django-pgschemas/badge/?version=latest)](https://django-pgschemas.readthedocs.io/)\n[![Code coverage](https://coveralls.io/repos/github/lorinkoz/django-pgschemas/badge.svg?branch=master)](https://coveralls.io/github/lorinkoz/django-pgschemas?branch=master)\n[![PyPi version](https://badge.fury.io/py/django-pgschemas.svg)](http://badge.fury.io/py/django-pgschemas)\n[![Downloads](https://pepy.tech/badge/django-pgschemas/month)](https://pepy.tech/project/django-pgschemas/)\n\nThis package uses Postgres schemas to support data multi-tenancy in a single Django project. It is a fork of [django-tenants](https://github.com/django-tenants/django-tenants) with some conceptual changes:\n\n- There are static tenants and dynamic tenants. Static tenants can have their own apps and urlconf.\n- Tenants can be routed via:\n  - URL using subdomain or subfolder on shared subdomain\n  - Session\n  - Headers\n- Public schema should not be used for storing the main site data, but the true shared data across all tenants. Table \"overriding\" via search path is not encouraged.\n- Management commands can be run on multiple schemas via wildcards, either sequentially or in parallel using multithreading.\n\n## Documentation\n\nhttps://django-pgschemas.readthedocs.io/\n\nVersion 1.0 has several breaking changes from the 0.\\* series. Please refer to [this discussion](https://github.com/lorinkoz/django-pgschemas/discussions/277) for details and bug reports.\n\n## Contributing\n\n- Join the discussion at https://github.com/lorinkoz/django-pgschemas/discussions.\n- PRs are welcome! If you have questions or comments, please use the discussions link above.\n- To run the test suite run `make` or `make coverage`. The tests for this project live inside a small django project called `sandbox`.\n\n## Credits\n\n- Tom Turner for [django-tenants](https://github.com/django-tenants/django-tenants).\n- Bernardo Pires for [django-tenant-schemas](https://github.com/bernardopires/django-tenant-schemas).\n- Denish Patel for [pg-clone-schema](https://github.com/denishpatel/pg-clone-schema)\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Django multi-tenancy through Postgres schemas",
    "version": "1.1.1",
    "project_urls": {
        "Documentation": "https://django-pgschemas.readthedocs.io/",
        "Repository": "https://github.com/lorinkoz/django-pgschemas"
    },
    "split_keywords": [
        "django",
        " tenants",
        " schemas",
        " multi-tenancy",
        " postgres"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ffdc348967956578a664442b7b1c44270a55bc694046cab3d873f012703d238b",
                "md5": "b15b3d739771553c340d6b70f2c5565f",
                "sha256": "b2efbad4b6af2afe12a4c9020ab72b030321638104f6a4c874d4244834696997"
            },
            "downloads": -1,
            "filename": "django_pgschemas-1.1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b15b3d739771553c340d6b70f2c5565f",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.10",
            "size": 84059,
            "upload_time": "2025-07-23T07:51:27",
            "upload_time_iso_8601": "2025-07-23T07:51:27.636952Z",
            "url": "https://files.pythonhosted.org/packages/ff/dc/348967956578a664442b7b1c44270a55bc694046cab3d873f012703d238b/django_pgschemas-1.1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "627096e292614917d2e0cfed4b7f69dcfeef8d3528b877ff1988b4645d5643b1",
                "md5": "09eb26008fcb9241cb0d340290e68c22",
                "sha256": "6e37425f8538903b464d4b9097a7fac4f4d3355d0fb58fa9e811c4be50df0323"
            },
            "downloads": -1,
            "filename": "django_pgschemas-1.1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "09eb26008fcb9241cb0d340290e68c22",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.10",
            "size": 75282,
            "upload_time": "2025-07-23T07:51:28",
            "upload_time_iso_8601": "2025-07-23T07:51:28.817791Z",
            "url": "https://files.pythonhosted.org/packages/62/70/96e292614917d2e0cfed4b7f69dcfeef8d3528b877ff1988b4645d5643b1/django_pgschemas-1.1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-23 07:51:28",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "lorinkoz",
    "github_project": "django-pgschemas",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "django-pgschemas"
}
        
Elapsed time: 1.83429s