Skip to content

Flash Messages

Session-backed notifications surfaced on the next page render. Rendered automatically by base.html.j2 — no template changes needed.

Adding a message

from fastpluggy.core.flash import FlashMessage

FlashMessage.add(request, "Saved successfully!", category="success")

Categories

Category Visual Use for
"info" Blue Neutral information
"success" Green Completed actions
"warning" Amber Non-blocking issues
"danger" Red Errors, failures

Typical pattern — POST/Redirect/GET

@router.post("/save")
async def save(request: Request, fast_pluggy=Depends(get_fastpluggy)):
    # ... do work ...
    FlashMessage.add(request, "Settings saved!", category="success")
    return redirect_to_previous(request)

The message is stored in the session and displayed on the next GET render, then cleared.

Demo route

The example plugin ships a /flash-demo route (example_flash_demo) that fires all four categories at once — useful for visual testing.