diff --git a/docs/plugins/development/permissions.md b/docs/plugins/development/permissions.md index 792632a59..62a1ede1b 100644 --- a/docs/plugins/development/permissions.md +++ b/docs/plugins/development/permissions.md @@ -21,31 +21,4 @@ class MyModel(NetBoxModel): ] ``` -For dynamic registration (e.g. when actions depend on runtime state), you can call `register_model_actions()` directly, typically in your plugin's `ready()` method: - -```python -# __init__.py -from netbox.plugins import PluginConfig - -class MyPluginConfig(PluginConfig): - name = 'my_plugin' - # ... - - def ready(self): - super().ready() - from utilities.permissions import ModelAction, register_model_actions - from .models import MyModel - - register_model_actions(MyModel, [ - ModelAction('sync', help_text='Synchronize data from external source'), - ModelAction('export', help_text='Export data to external system'), - ]) - -config = MyPluginConfig -``` - Once registered, these actions appear as checkboxes in a flat list when creating or editing an ObjectPermission. - -::: utilities.permissions.ModelAction - -::: utilities.permissions.register_model_actions diff --git a/netbox/utilities/permissions.py b/netbox/utilities/permissions.py index ea834cd0a..0cee1db9d 100644 --- a/netbox/utilities/permissions.py +++ b/netbox/utilities/permissions.py @@ -13,7 +13,6 @@ __all__ = ( 'get_permission_for_model', 'permission_is_exempt', 'qs_filter_from_constraints', - 'register_model_actions', 'resolve_permission', 'resolve_permission_type', )