Skip to content

Restore action

RestoreAction undeletes a soft-deleted record. Defaults: name restore, label Restore, check icon, success color, confirmation on.

app/orbit/resources/post_resource.py
from almasix.orbit.actions import RestoreAction
RestoreAction.make().action(lambda record, **_: restore(record))

Orbit RestoreAction (light)

Orbit RestoreAction (dark)

Default modal copy:

  • Heading: Restore?
  • Description: Restore this soft-deleted record.
app/orbit/resources/post_resource.py
from almasix.orbit.actions import RestoreBulkAction
table.bulk_actions([
RestoreBulkAction.make().action(lambda records, **_: restore_many(records)),
])

Orbit RestoreBulkAction (light)

Orbit RestoreBulkAction (dark)

Pair with table trash filters so restore only appears on deleted rows:

app/orbit/resources/post_resource.py
from almasix.orbit.actions import RestoreAction, ForceDeleteAction, DeleteAction
from almasix.orbit.tables.filters import TrashedFilter
table.filters([TrashedFilter.make()]).actions([
DeleteAction.make().visible(lambda record, **_: not record.get("deleted_at")),
RestoreAction.make().visible(lambda record, **_: bool(record.get("deleted_at"))),
ForceDeleteAction.make().visible(lambda record, **_: bool(record.get("deleted_at"))),
])