Commit e82d0bf2 authored by MJoshBen's avatar MJoshBen

Created Edit Book and Adjusted the Book Detail Links as well as its corresponding URLs and Views

parent 8eddef72
...@@ -10,7 +10,8 @@ ...@@ -10,7 +10,8 @@
{{ book.blurb }}</h3> {{ book.blurb }}</h3>
{% endblock %} {% endblock %}
{% block scripts %} {% block scripts %}
<a href="http://127.0.0.1:8000/home">Home</a> <a href="/books/{{ book.pk }}/edit"><input type="submit" value="Edit Book"></a><br>
<a href="http://127.0.0.1:8000/books">Books</a> <a href="/home">Home</a>
<a href="http://127.0.0.1:8000/authors">Authors</a> <a href="/books">Books</a>
<a href="/authors">Authors</a>
{% endblock %} {% endblock %}
{% extends 'base.html' %}
{% block title %}Edit Book{% endblock %}
{% block content %}
<form action="" method="post">
{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Save Changes">
</form>
{% endblock %}
{% block scripts %}
{% endblock %}
from django.urls import path from django.urls import path
from .views import homepage_view, BooksListView, BooksDetailView, BooksCreateView, AuthorListView, AuthorDetailView, AuthorCreateView from .views import homepage_view, BooksListView, BooksDetailView, BooksCreateView, BooksUpdateView, AuthorListView, AuthorDetailView, AuthorCreateView
urlpatterns = [ urlpatterns = [
path('home/', homepage_view, name='home'), path('home/', homepage_view, name='home'),
path('books/', BooksListView.as_view(), name='books-list'), path('books/', BooksListView.as_view(), name='books-list'),
path('books/<int:pk>/details', BooksDetailView.as_view(), name='book-details'), path('books/<int:pk>/details', BooksDetailView.as_view(), name='book-details'),
path('books/add/', BooksCreateView.as_view(), name='add-book'), path('books/add/', BooksCreateView.as_view(), name='add-book'),
path('books/<int:pk>/edit', BooksUpdateView.as_view(), name='edit-book'),
path('authors/', AuthorListView.as_view(), name='authors-list'), path('authors/', AuthorListView.as_view(), name='authors-list'),
path('authors/<int:pk>/details', AuthorDetailView.as_view(), name='author-details'), path('authors/<int:pk>/details', AuthorDetailView.as_view(), name='author-details'),
path('authors/add/', AuthorCreateView.as_view(), name='add-author') path('authors/add/', AuthorCreateView.as_view(), name='add-author')
......
from django.shortcuts import render from django.shortcuts import render
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, UpdateView
# Create your views here. # Create your views here.
from .models import Books, Author from .models import Books, Author
...@@ -27,6 +27,11 @@ class BooksCreateView(CreateView): ...@@ -27,6 +27,11 @@ class BooksCreateView(CreateView):
fields = '__all__' fields = '__all__'
template_name = 'bookshelf/add-book.html' template_name = 'bookshelf/add-book.html'
class BooksUpdateView(UpdateView):
model = Books
fields = '__all__'
template_name = 'bookshelf/edit-book.html'
class AuthorListView(ListView): class AuthorListView(ListView):
model = Author model = Author
def get(self, request): def get(self, request):
......
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