Я пытаюсь реализовать веб-приложение в django, где у меня есть представление на основе классов, которое наследуется от PermissionRequiredMixin
и generics.View
.
Вот пример модели:
class SomeModel(models.Model):
# Here I will put some model attributes
class Meta:
permissions = (
('some_permission', 'Can do some job'),
)
До сих пор я еще не растерялся. Однако, когда я пытаюсь написать мнение, я в замешательстве. Я прочитал несколько вопросов о переполнении стека, а также документацию django, но я не очень хорошо понял, потому что они пишут что-то вроде этого:
class MyView(PermissionRequiredMixin, View)
permission_required = ('polls.can_open', 'polls.can_edit')
Я попытался выяснить, что писать в моем случае, и В итоге я написал следующее:
class SomeView(PermissionRequiredMixin, View):
permission_denied_message = 'You don\'t have permission'
permission_required = 'app_name.some_permission'
Что заставило меня усомниться в том, что PyCharm не выполнял автозаполнение при написании последней строки: permission_required = 'app_name.some_permission'
. Кроме того, я не уверен, узнает ли django, о каком разрешении я здесь говорю.
Я понял, как выполнять работу? или я не прав? Должен ли я написать это так: permission_required = 'app_name.SomeModel.some_permission'
?