Проверка владения объектом в Django UpdateView

РЕДАКТИРОВАТЬ:

Лучшим решением для меня было просто использовать систему разрешений, тем более что мне были нужны другие типы контролируемого доступа к объектам. Теперь я использую Django-guardian, чтобы помочь с такими разрешениями на уровне объекта, как это.

Оригинал: I»

Я немного расширяю стандартное руководство по книгам на django, позволяя пользователям загружать истории, а также иметь автора, издателя и т. д.я пытаюсь разрешить авторам (создателям) истории использовать обзор обновлений, а другие пользователи перенаправляются.

Изменение get_object в представлении UpdateStory отключило его, но трассировка проходит через мою StoryFormв этом по какой-то причине. Ошибка'HttpResponseRedirect' object has no attribute '_meta'

views.py

class UpdateStory(LoginRequiredMixin, UpdateView):
    model = Story
    template_name = 'stories/story_update.html'
    form_class = StoryForm

    def get_object(self, queryset=None):
        obj = super(UpdateStory, self).get_object()
        if not obj.author == self.request.user:
            return redirect(obj)
        return obj

forms.pyI»

class StoryForm(forms.ModelForm):
    def __init__(self, *args, **kwargs):
        super(StoryForm,self).__init__(*args, **kwargs)

Я все еще новичок, так что это может быть очевидно, но яискал пару часов и яЯ в тупике.

Ответы на вопрос(2)

Ваш ответ на вопрос