Skip to content

Custom admin views (ModelAdmin.get_urls / AdminSite.get_urls) are unreachable in the SPA #439

@martin-castro-laminr-ai

Description

Problem (swap blocker)

The package exposes a fixed JSON API surface (api/urls.py:84-176) + an SPA catch-all (urls.py:55). Nothing introspects ModelAdmin.get_urls() / AdminSite.get_urls(), and the registry payload (registry.py:133-221) emits only model metadata + the four permission booleans. A consumer who adds bespoke admin pages — custom change-form buttons, report / import-export views, dashboards — via get_urls() (a very common admin extension) has no way to reach or render them from the SPA. For shops that rely on custom admin views, this blocks a full swap.

Direction

Surface the consumer's extra admin URLs (those in get_urls() beyond the standard CRUD routes) so the SPA can link out to them — open the legacy-rendered page (Django's own admin templates) in a new tab/iframe, or expose a per-model / index "custom views" menu. A link-out is enough to unblock; full SPA rendering of arbitrary custom views is out of scope.

Where

api/urls.py, api/registry.py (expose custom-view links), urls.py catch-all.

Acceptance

  • A consumer's custom admin view is reachable from the SPA (linked), not orphaned.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions