Skip to main content

Django ORM playground — dev-only web UI for ORM queries

Project description

DORM

A Django ORM playground — a dev-only web UI to run ORM queries against your connected database.

Install

pip install dorm-plg

Setup

# settings.py
INSTALLED_APPS = [..., "django_htmx", "dorm"]
MIDDLEWARE = [..., "django_htmx.middleware.HtmxMiddleware"]
# urls.py
from django.urls import path, include

urlpatterns = [
    ...
    path("__dorm__/", include("dorm.urls", namespace="dorm")),
]

Open /__dorm__/ in your browser and start writing ORM queries.

Warning: DORM executes arbitrary Python code in your Django process. It is gated behind DEBUG=True and must never be used in production.

Usage

In the playground editor, write any Django ORM expression. All models from your INSTALLED_APPS are available without importing them:

# Get all users
User.objects.all()

# Filter with related fields
Book.objects.filter(author__name="Tolkien").select_related("author")

# Aggregations
from django.db.models import Count
Author.objects.annotate(book_count=Count("books")).order_by("-book_count")

Press Ctrl+Enter or click Run to execute. Results are rendered as a table.

Development

git clone https://github.com/yourname/dorm
cd dorm
python3.10 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
cd sandbox && python manage.py migrate && python manage.py runserver
# Open: http://127.0.0.1:8000/__dorm__/

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

dorm_plg-0.1.0.tar.gz (13.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dorm_plg-0.1.0-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

Details for the file dorm_plg-0.1.0.tar.gz.

File metadata

  • Download URL: dorm_plg-0.1.0.tar.gz
  • Upload date:
  • Size: 13.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.13

File hashes

Hashes for dorm_plg-0.1.0.tar.gz
Algorithm Hash digest
SHA256 1186324db0c3a34513212d1e61bf04cdf99a79ddc12f423ce4b4bcd6927e4383
MD5 ff1e0b05060ce2c9792634ffa672986e
BLAKE2b-256 465e057e17b5c6f9f5c28827c7341513594491c6a81a560a5c1799ddd8aad4e6

See more details on using hashes here.

File details

Details for the file dorm_plg-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: dorm_plg-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 13.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.13

File hashes

Hashes for dorm_plg-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d083aaef20c7049693dc53649dd837ef472fcb13a01c2dc9799cbff947f555da
MD5 317033002dd342c763e7d90ef3d222e2
BLAKE2b-256 eaa4907d5e176d104f4a5bdda8bdc0c95f9d6d57f8657c0e33e8a4e211a92d69

See more details on using hashes here.

Supported by

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