Skip to main content

Django-based API to serve URLid + graph database

Project description

django-urlid-graph

Django-based API to serve URLid + graph database. This repository hosts the app code and also a project structure so it's easier to develop - only the urlid_graph folder is packaged before going to PyPI.

Installation and configuration

  1. Add "urlid_graph" to your INSTALLED_APPS setting like this:
INSTALLED_APPS = [
    ...
    "urlid_graph",
]
  1. Change database configurations (this example uses python-decouple):
DATABASE_URL = config("DATABASE_URL")  # must be set
GRAPH_DATABASE_URL = config("GRAPH_DATABASE_URL")  # must be set
graph_config = config("GRAPH_DATABASE_URL", cast=db_url)
GRAPH_DATABASE = graph_config["NAME"]  # must be set
DATABASES = {
    "default": config("DATABASE_URL", cast=db_url),
    GRAPH_DATABASE: graph_config,  # must set this way
}
DATABASE_ROUTERS = ["urlid_graph.db_router.RelationAndGraphDBRouter"]
  1. Configure Django caching system (used to store ElementConfig labels):
CACHES = {
    "default": {
        "BACKEND": "django.core.cache.backends.locmem.LocMemCache",
        "TIMEOUT": 24 * 3600,
        "MAX_ENTRIES": 1024,
    }
}
  1. Include the urlid_graph URLconf in your project's urls.py like this:
    path('v1/', include("urlid_graph.urls")),
  1. Run python manage.py migrate to create the needed models, triggers etc.

  2. Populate the database:

# you may want to add entities to urlid_graph_entity model
python manage.py import_config data/config.csv  # must create this file before
python manage.py import_config data/config.csv  # must create this file before
python manage.py import_objects appname Model file.csv.xz  # must create model
python manage.py import_relationships relname file.csv.xz

Importing data

python manage.py import_objects appname Model file.csv[.gz|.xz]
python manage.py import_relationship relname file.csv[.gz|.xz]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_urlid_graph-0.5.11.tar.gz (33.4 kB view details)

Uploaded Source

File details

Details for the file django_urlid_graph-0.5.11.tar.gz.

File metadata

  • Download URL: django_urlid_graph-0.5.11.tar.gz
  • Upload date:
  • Size: 33.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.5

File hashes

Hashes for django_urlid_graph-0.5.11.tar.gz
Algorithm Hash digest
SHA256 2a40cf67b0627772de8d215f6655b95ea5f2b64cd781f0ffe6fd2cf67b7600e1
MD5 291067872b355361363f04097b9d63b7
BLAKE2b-256 54e517b3134c9b7c449b8db31333298b25e88c9948554d45610a911a8d6a7f2c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page