Я исследовал это уже пару дней и нашел множество возможных решений, однако большинству руководств или страниц документации больше года (кроме официальных материалов django) и они предназначены для более старой версии django... или они просто не объясняйте вещи очень ясно. Я относительно новичок в Django, а также в python, поэтому мне нужно немного больше объяснений, которые, кажется, дают большинство туторов.
По сути, я делаю частный архив файлов с блогом в начале. Нечлены увидят только страницу входа и смогут увидеть остальную часть сайта только в том случае, если они зарегистрируются с помощью кода приглашения и войдут в систему.
В настоящее время я использую Zinnia как простое приложение для блога и настраиваю его шаблон по умолчанию в соответствии со своими потребностями.
Кто-нибудь знает, как я могу реализовать эти функции?
РЕДАКТИРОВАТЬ: я просматриваю учебник "Обработка аутентификации и авторизации", как было предложено, и все кажется, все идет хорошо, пока я не должен создавать представления на основе классов. Поскольку учебник работает с каким-то примером приложения типа «список контактов», а я веду блог zinnia, мне было интересно, не могли бы вы помочь мне определить, какие классы/модели использовать. Мой файл views.py в настоящее время выглядит следующим образом, что, вероятно, неверно:
# blog/views.py
from django.contrib.auth.decorators import login_required
from django.utils.decorators import method_decorator
class LoggedInMixin(object):
@method_decorator(login_required)
def dispatch(self, *args, **kwargs):
return super(LoggedInMixin, self).dispatch(*args, **kwargs)
class ListBlogView(LoggedInMixin, ListView):
model = Entry
template_name = 'base.html'
def get_queryset(self):
return Entry.objects.filter(owner=self.request.user)
Не уверен, как бы я изменил этот код, чтобы он соответствовал тому, что я пытаюсь сделать. Я почти уверен, что «модель», «имя_шаблона» и «возврат» должны соответствовать чему-то, связанному с циннией, но я действительно в тупике.