32 lines
1.1 KiB
Python
32 lines
1.1 KiB
Python
from .models import Article
|
|
from django.shortcuts import render
|
|
from django.http import Http404, HttpResponse
|
|
from django.shortcuts import redirect
|
|
|
|
def archive(request):
|
|
return render(request, 'archive.html', {"posts": Article.objects.all()})
|
|
|
|
def get_article(request, article_id):
|
|
try:
|
|
post = Article.objects.get(id=article_id)
|
|
return render(request, 'article.html', {"post": post, "user": request.user})
|
|
except Article.DoesNotExist:
|
|
raise Http404
|
|
|
|
def create_post(request):
|
|
if request.method == "POST":
|
|
form = {
|
|
'text': request.POST["text"], 'title': request.POST["title"]
|
|
}
|
|
if form["text"] and form["title"]:
|
|
try:
|
|
article = Article.objects.create(text=form["text"], title=form["title"], author=request.user)
|
|
return redirect('get_article', article_id=article.id)
|
|
except:
|
|
return render(request, 'article_invalid_name.html')
|
|
|
|
if not request.user.is_anonymous:
|
|
return render(request, 'new_article.html')
|
|
else:
|
|
return HttpResponse('Unauthorized', status=401)
|