From d77dcf62b4005a0f36ef2fa7ba6d3651d2ef38d7 Mon Sep 17 00:00:00 2001 From: Andrew Godwin Date: Sat, 5 Nov 2022 14:17:27 -0600 Subject: Initial commit (users and statuses) --- statuses/views/home.py | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 statuses/views/home.py (limited to 'statuses/views/home.py') diff --git a/statuses/views/home.py b/statuses/views/home.py new file mode 100644 index 0000000..b9b98d2 --- /dev/null +++ b/statuses/views/home.py @@ -0,0 +1,35 @@ +from django import forms +from django.shortcuts import redirect +from django.utils.decorators import method_decorator +from django.views.generic import FormView + +from core.forms import FormHelper +from statuses.models import Status +from users.decorators import identity_required + + +@method_decorator(identity_required, name="dispatch") +class Home(FormView): + + template_name = "statuses/home.html" + + class form_class(forms.Form): + text = forms.CharField() + + helper = FormHelper(submit_text="Post") + + def get_context_data(self): + context = super().get_context_data() + context.update( + { + "statuses": self.request.identity.statuses.all()[:100], + } + ) + return context + + def form_valid(self, form): + Status.create_local( + identity=self.request.identity, + text=form.cleaned_data["text"], + ) + return redirect(".") -- cgit v1.2.3