Skip to content

Commit

Permalink
[geo] Extend DeviceAdmin unobtrusively with monkey patching
Browse files Browse the repository at this point in the history
Prepend DeviceLocationInline to DeviceAdmin with monkey patching.
This allows to have other modules extending DeviceAdmin without
fighting each other.
  • Loading branch information
nemesifier committed May 4, 2018
1 parent 06769eb commit cc7e9ff
Showing 1 changed file with 3 additions and 11 deletions.
14 changes: 3 additions & 11 deletions openwisp_controller/geo/admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,7 @@
from openwisp_utils.admin import MultitenantOrgFilter

from ..admin import MultitenantAdminMixin
from ..config.admin import ConfigInline
from ..config.admin import DeviceAdmin as BaseDeviceAdmin
from ..config.models import Device
from ..config.admin import DeviceAdmin
from .models import DeviceLocation, FloorPlan, Location


Expand Down Expand Up @@ -71,11 +69,5 @@ class DeviceLocationInline(ObjectLocationMixin, admin.StackedInline):
admin.site.register(Location, LocationAdmin)


# Add DeviceLocationInline to config.DeviceAdmin

class GeoDeviceAdmin(BaseDeviceAdmin):
inlines = [DeviceLocationInline, ConfigInline]


admin.site.unregister(Device)
admin.site.register(Device, GeoDeviceAdmin)
# Prepend DeviceLocationInline to config.DeviceAdmin
DeviceAdmin.inlines.insert(0, DeviceLocationInline)

0 comments on commit cc7e9ff

Please sign in to comment.