Предоставьте пользователям «анти-разрешения» в Django - PullRequest
1 голос
/ 08 ноября 2011

Я работаю над проектом django, в котором пользователи могут публиковать статьи и голосовать за них.Но пользователи не должны голосовать за свои статьи.В настоящее время я использую систему разрешений с django-guardian.Моя идея заключается в предоставлении своего рода «анти-разрешения», чтобы только автор не мог голосовать за свои собственные статьи.

Я считаю, что таким образом все разрешения могутобрабатываться в едином протоколе, отдельно от функций просмотра (вместо помещения условий внутри них).И если в будущем появятся такие требования, как эти, они могут быть элегантно обработаны.

Но семантически не выглядит правильным использовать «разрешения» таким образом.Просто интересно, есть ли лучший способ сделать это?

Спасибо за вашу помощь!:)

1 Ответ

1 голос
/ 19 декабря 2011

Напишите менеджера, который берет контекст и затем возвращает список объектов, по которым пользователь может голосовать.

Используйте этот менеджер на ваш взгляд.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...