Aktywne Wpisy
Mrbimbek +572
Dwa lata temu pomagałem uchodźcom z Ukrainy którzy z jedną walizką uciekali przed wojną, była w tym rodzina z którą kontakt miałem chwilę dłużej, trzy dziewczyny z matką i dwójka dzieci, pomagałem im szukać pracy, tłumaczyć dokumenty, pomagałem w urzędach. Jedna z dziewczyn dziś się odezwała, wrócili na Ukrainę a kilka dni temu urodziła syna, przez to jak im pomogłem w najcięższym dla nich czasie nazwała syna moim imieniem, taka drobnostka a
CLOUT_MMA +153
robię sobie wtedy permission:
[...]
def hasobjectpermission(self, request, view, obj):
....if view.action == ['retrieve', 'partial_update']:
........return request.user in obj.testers.all() or request.user == obj.owner
[...]
Czy z jakiegoś powodu potrzebuję django groups i od tej strony gryźć?
Drugie pytanie: Docelowo chcę wprowadzić rozwiązanie w którym tylko owner może w pełni modyfikować obiekt, natomiast "tester" może edytować tylko w jeden konkretny sposób. Konkretnie: chcę mieć klona funkcjonalności google docs: inline comments. "Tester" mógłby edytować tekst wyłącznie poprzez zaznaczanie fragmentów, do których byłyby podpinane komentarze (a więc mógłby jedynie wstawiać elementy z generowanym id komentarza). To wyłącznie frontend powinien się zajmować walidacją/ograniczaniem możliwości edycji, dobrze myślę?
Thanks from the mountain.
#drf #django #djangorestframework
Użyj wbudowanych grup i permissionów
W permissionach bedziesz mial canview, cancomment, can_edit itd itp
W grupach - tester/owner/viewer
M2M się nie sprawdzi, bedzie ciezsze w utrzymaniu, nie potrzebujesz calego modelu uzytkownika, a permissiony sa natywnie wspierane przez django wiec po co kombinujesz jak kon pod góre
I swoją drogą to jak bedziesz sprawdzał czy ktoś ma uprawnienia? if user in obj.testers.all() or user in obj.owners.all() or user in
@Lunatik: Ok, a rzucisz jakieś hasła żebym mógł się doedukować? : (
@Lunatik: Jakbym wiedział że to tak wygląda to bym w kunia się nie bawił ( ͡° ͜ʖ ͡°) Po prostu wyszedłem od custom permissions wykonywanych przez viewsety. Jeżeli DjangoModelPermissions będzie lepsze to się przyjrzę.
Hm, nie no, jest tylko jeden owner i grupa testerów.