Sooner or later, you will need to perform actions on your data that are specific to your business.
Moderating comments, generating invoices, logging into a customer’s account, or banning users are exactly the kind of important tasks to unlock to manage your day-to-day operations.
Custom Action displayed in a Table View
To create an Action, you will first need to declare it in your code for a specific collection. Here we declare a "Mark as Live" Action for the
from typing import Union
from forestadmin.datasource_toolkit.decorators.action.types.actions import ActionSingle
from forestadmin.datasource_toolkit.decorators.action.result_builder import ResultBuilder
async def execute(self, context: ActionContextBulk, result_builder: ResultBuilder) -> Union[None, ActionResult]:
# implement your controller here
agent.customize_collection("User").add_action("Mark as live", MarkAsLiveAction())
After declaring it, the Action will appear in the Smart Actions tab within your Collection Settings.
An Action is displayed in the UI only if:
- it is set as "visible" (see screenshot below) AND
- in non-development environments, the user's role must grant the "trigger" permission
You must make the Action visible there if you wish users to be able to see it in this Team.
Making the Action visible