Skip to content

Known Limitations

Gaps worth knowing about before you rely on something. These aren't bugs (the fixed bugs are in git history, not here) -- they're missing features or deliberate scope cuts.

can_export can't be gated per-role

SQLAdmin has no async check_can_export hook (unlike check_can_create / check_can_edit / check_can_delete / check_can_view_details), so export permission can only be set statically per view:

class ProductAdmin(RBACModelView, model=Product):
    can_export = False   # nobody can export this, regardless of role

There's no way today to say "role A can export Products but role B can't."

ChildOf prefill and "Save and add another"

When a child list is filtered to a single parent id, ChildOf prefills the parent field on create and Save returns to that filtered list (see BuildingBlocks.md).

Two edge cases are not handled:

  • Multi-id filters (?candidate_id=1,2) do not prefill the parent picker -- pick the parent manually.
  • "Save and add another" opens an unfiltered create form (sqladmin navigates to /create with no query string). Use plain Save to stay in the filtered list.

The Permission resource dropdown is populated at process startup

Kloudmint.register() populates the dropdown registry when your app starts up -- if you dynamically register new admin views after the server is already handling traffic (unusual, but possible), the dropdown won't reflect them until the next restart. Normal FastAPI apps register all views once at startup, so this isn't an issue in practice.

No scaffolding CLI

There's no kloudmint init command to generate the Role/Permission Alembic migration in a new project -- follow CreatingTables.md manually for now.

Distributed through a private package index

kloudmint is not on public PyPI. Your team installs it from its private index -- see Installation.md.