Django项目之图书管理系统
以下是一个简化的Django图书管理系统的代码实例,展示了如何创建一个图书模型并添加基本的视图函数。
# models.py
from django.db import models
class Book(models.Model):
title = models.CharField(max_length=100)
author = models.CharField(max_length=100)
published_date = models.DateField()
isbn = models.CharField(max_length=13)
def __str__(self):
return self.title
# views.py
from django.shortcuts import render
from django.http import HttpResponse
from .models import Book
def book_list(request):
books = Book.objects.all()
return render(request, 'books.html', {'books': books})
def book_create(request):
if request.method == 'POST':
title = request.POST.get('title')
author = request.POST.get('author')
published_date = request.POST.get('published_date')
isbn = request.POST.get('isbn')
new_book = Book.objects.create(
title=title,
author=author,
published_date=published_date,
isbn=isbn
)
return HttpResponse(f"Book created: {new_book}")
return render(request, 'create_book.html')
# urls.py
from django.urls import path
from .views import book_list, book_create
urlpatterns = [
path('', book_list, name='book_list'),
path('create/', book_create, name='book_create'),
]
# books.html (简单的HTML表格展示图书列表)
<!DOCTYPE html>
<html>
<head>
<title>Book List</title>
</head>
<body>
<h1>Book List</h1>
<ul>
{% for book in books %}
<li>{{ book.title }} by {{ book.author }}</li>
{% endfor %}
</ul>
</body>
</html>
# create_book.html (简单的HTML表单用于创建新图书)
<!DOCTYPE html>
<html>
<head>
<title>Create Book</title>
</head>
<body>
<h1>Add New Book</h1>
<form method="post" action="">
<label for="title">Title:</label>
<input type="text" id="title" name="title"><br><br>
<label for="author">Author:</label>
<input type="text" id="author" name="author"><br><br>
<label for="published_date">Published Date:</label>
<input type="date" id="published_date" name="published_date"><br><br>
<label for="isbn">ISBN
评论已关闭