Skip to content

Commit b6b312d

Browse files
xoaryaastktyagi
authored andcommitted
[Fix] Add basic formatting #682
Added custom uuid converter and converter-based URL patterns. Fixes #682
1 parent 22b354f commit b6b312d

2 files changed

Lines changed: 16 additions & 1 deletion

File tree

openwisp_controller/config/apps.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,9 @@
1818

1919
from openwisp_utils.admin_theme import register_dashboard_chart
2020
from openwisp_utils.admin_theme.menu import register_menu_group
21-
21+
from django.urls import register_converter
22+
from django.urls.converters import get_converters
23+
from .converters import UUIDAnyConverter, UUIDAnyOrFKConverter
2224
from . import settings as app_settings
2325
from .signals import (
2426
config_backend_changed,
@@ -42,6 +44,7 @@ class ConfigConfig(AppConfig):
4244
default_auto_field = "django.db.models.AutoField"
4345

4446
def ready(self, *args, **kwargs):
47+
self.register_path_converters()
4548
self.__setmodels__()
4649
self.connect_signals()
4750
self.register_notification_types()
@@ -51,6 +54,13 @@ def ready(self, *args, **kwargs):
5154
self.register_menu_groups()
5255
self.notification_cache_update()
5356

57+
def register_path_converters(self):
58+
converters = get_converters()
59+
if "uuid_any" not in converters:
60+
register_converter(UUIDAnyConverter, "uuid_any")
61+
if "uuid_any_or_fk" not in converters:
62+
register_converter(UUIDAnyOrFKConverter, "uuid_any_or_fk")
63+
5464
def __setmodels__(self):
5565
self.device_model = load_model("config", "Device")
5666
self.template_model = load_model("config", "Template")

openwisp_controller/config/urls.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
from django.urls import path
22

33
from .views import schema
4+
from django.urls import register_converter
5+
from .converters import UUIDAnyConverter, UUIDAnyOrFKConverter
6+
7+
register_converter(UUIDAnyConverter, "uuid_any")
8+
register_converter(UUIDAnyOrFKConverter, "uuid_or_fk")
49

510
app_name = "openwisp_controller"
611
urlpatterns = [path("config/schema.json", schema, name="schema")]

0 commit comments

Comments
 (0)