Ich möchte die API-Stammverzeichnisliste basierend auf den aktuellen Benutzerberechtigungen personalisieren, sodass nicht alle Endpunkte für alle Benutzer auf der Ebene sichtbar sind.Erstellen einer benutzerdefinierten API-Stammliste basierend auf Berechtigungen
Bsp .:
router.register(r'users',views.UserViewSet, base_name='users')
router.register(r'groups', views.GroupViewSet, base_name='groups')
router.register(r'schedules', views.CallSchedulesViewSet, base_name='schedules')
urlpatterns = [
url(r'^', include(router.urls)),
...
]
Für "Superuser" die Liste sein sollte:
- Benutzer
- Gruppen
- Pläne
Aber für "normaluser" die Liste sollte nur lauten:
- Pläne
Dank Arun. Was ich getan habe, ist eine Ansicht ohne Daten hinzugefügt, es tut im Grunde, was Sie oben erwähnen. urlpatterns = [url (r '^ $', ansichten.APIRoot.as_view()), url (r '', include (router.urls)),] – Slipstream