Commit e51f3b7e authored by Ysabella Panghulan's avatar Ysabella Panghulan

created BookCreateView class in views.py

parent 61c60363
...@@ -5,6 +5,7 @@ from django.shortcuts import render, redirect ...@@ -5,6 +5,7 @@ from django.shortcuts import render, redirect
from django.views.generic.list import ListView from django.views.generic.list import ListView
from django.views.generic.detail import DetailView from django.views.generic.detail import DetailView
from django.views.generic.edit import CreateView from django.views.generic.edit import CreateView
from .forms import AuthorForm
# Create your views here. # Create your views here.
def Homepage(request): def Homepage(request):
...@@ -24,6 +25,24 @@ class BooksDetailView(DetailView): ...@@ -24,6 +25,24 @@ class BooksDetailView(DetailView):
model = Books model = Books
template_name = 'bookshelf/book_details.html' template_name = 'bookshelf/book_details.html'
class BooksCreateView(CreateView):
model = Books
template_name = 'bookshelf/add-book.html'
fields = '__all__'
def post(self, request, *args, **kwargs):
form = BookForm(request.POST)
if form.is_valid():
author = form.save()
return redirect('book-details', pk=book.pk)
else:
form = AuthorForm()
context = {
'form': form
}
return render(request, 'bookshelf/add-book.html', context)
class AuthorListView(ListView): class AuthorListView(ListView):
model = Author model = Author
template_name = 'bookshelf/authors.html' template_name = 'bookshelf/authors.html'
...@@ -38,9 +57,13 @@ class AuthorCreateView(CreateView): ...@@ -38,9 +57,13 @@ class AuthorCreateView(CreateView):
fields = '__all__' fields = '__all__'
def post(self, request, *args, **kwargs): def post(self, request, *args, **kwargs):
form = self.get_form() form = AuthorForm(request.POST)
if form.is_valid(): if form.is_valid():
author = form.save() author = form.save()
return redirect('author-details', pk=author.pk) return redirect('author-details', pk=author.pk)
else: else:
return self.form_invalid(form) form = AuthorForm()
context = {
'form': form
}
return render(request, 'bookshelf/add-author.html', context)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment