lib.itmens/books/views.py

46 lines
1.3 KiB
Python
Raw Normal View History

2020-05-01 22:46:15 +08:00
from django.shortcuts import render, get_object_or_404, redirect, reverse
from django.contrib.auth.decorators import login_required
from django.utils.translation import gettext_lazy as _
from django.http import HttpResponseBadRequest
from .models import *
from .forms import *
@login_required
def create(request):
if request.method == 'GET':
form = BookForm()
return render(
request,
'books/create_update.html',
{
'form': form,
'title': _('添加书籍')
}
)
elif request.method == 'POST':
# check user credential in post data, must be the login user
pass
form = BookForm(request.POST)
if form.is_valid():
form.instance.last_editor = request.user
form.save()
return redirect(reverse("books:retrieve", args=[form.instance.id]))
else:
return HttpResponseBadRequest()
@login_required
def retrieve(request, id):
if request.method == 'GET':
book = get_object_or_404(Book, pk=id)
return render(
request,
'books/detail.html',
{
'book': book,
}
)
else:
return HttpResponseBadRequest()