Hier ist ein Beispiel Repository. Bitte beachten Sie, dass das Repository auch als Einstellung für jede APP dient.
Es gibt Zeiten, in denen Sie eine Klasse aus einer Zeichenfolge in Django importieren möchten. Verwenden Sie in diesem Fall import_string ** in ** django.utils.module_loading.
from django.utils.module_loading import import_string
cl = import_string('rest_framework.permissions.IsAdminUser')
Ich habe die Berechtigung in settings.py als Array von Zeichenfolgen festgelegt und verwendet, als ich sie im RestFrameWork Viewset verwenden wollte.
project/settings.py
SAMPLE_PERMISSIONS = [
'rest_framework.permissions.IsAuthenticated',
'sample_app.permissions.SamplePermission'
]
sample_app/views.py
from django.conf import settings
from rest_framework.viewsets import ModelViewSet
from django.utils.module_loading import import_string
from .serializers import SampleSerializer
from .models import Sample
class SampleViewSet(ModelViewSet):
serializer_class = SampleSerializer
queryset = Sample.objects.all()
#Hier verwendet.
# IsAuthenticated,SamplePermission gilt für Berechtigungen.
permission_classes = [
import_string(permission_class) for permission_class in settings.SAMPLE_PERMISSIONS]
Sie können es so verwenden. Ich denke, es gibt Zeiten, in denen ich es benutze, also als Referenz,
Hier ist ein Beispiel Repository. Bitte beachten Sie, dass das Repository auch als Einstellung für jede APP dient.
Na dann, hab ein gutes Django-Leben.
Recommended Posts