zoukankan      html  css  js  c++  java
  • django图书管理系统一

    项目截图:

     

     

     

    bookms/settings.py

    INSTALLED_APPS = [

    'django.contrib.admin',

    'django.contrib.auth',

    'django.contrib.contenttypes',

    'django.contrib.sessions',

    'django.contrib.messages',

    'django.contrib.staticfiles',

    'app01.apps.App01Config',

    ]

    bookms/urls.py

    from django.contrib import admin

    from django.urls import path,re_path

    from app01 import views

    urlpatterns = [

    path('admin/', admin.site.urls),

    path('addbook/',views.addbook),

    path('books/', views.books),

    re_path(r"books/(d+)/delete", views.delbook),

    re_path(r"books/(d+)/change", views.changebook),

    ]

    app01/models.py

    from django.db import models

    # Create your models here.

    class Book(models.Model):

    id = models.AutoField(primary_key=True)

    title = models.CharField(max_length=32)

    pub_date = models.DateField()

    price = models.DecimalField(max_length=8,decimal_places=2,max_digits=10)

    publish = models.CharField(max_length=32)

    app01/views.py

    from django.shortcuts import render,HttpResponse, redirect

    from .models import Book

    # Create your views here.

    #添加图书视图函数

    def addbook(request):

    if request.method == "POST":

    title = request.POST.get("title")

    price = request.POST.get("price")

    date = request.POST.get("date")

    publish = request.POST.get("publish")

    book_obj = Book.objects.create(title=title,price=price,pub_date=date,publish=publish)

    return redirect("/books/")

    return render(request, 'app01/addbook.html')

    #查看所有图书视图函数

    def books(request):

    book_list = Book.objects.all()

    return render(request, "app01/books.html",{"book_list":book_list})

    #删除指定id的视图函数

    def delbook(request, id):

    Book.objects.filter(id=id).delete()

    return redirect("/books/")

    #编辑指定id的视图函数

    def changebook(request, id):

    book_obj = Book.objects.filter(id=id).first()

    if request.method == "POST":

    title = request.POST.get("title")

    price = request.POST.get("price")

    date = request.POST.get("date")

    publish = request.POST.get("publish")

    Book.objects.filter(id=id).update(title=title,price=price,pub_date=date,publish=publish)

    return redirect("/books/")

    return render(request, "app01/changebook.html",{"book_obj":book_obj})

    app01/addbook.html

    <!DOCTYPE html>

    <html lang="en">

    <head>

    <meta charset="UTF-8">

    <title>添加书籍</title>

    <link rel="stylesheet" href="/static/dist/css/bootstrap.css">

    <style>

    .container{

    margin-top: 100px;

    }

    .btn{

    margin-top: 10px;

    }

    </style>

    </head>

    <body>

    <h3>添加书籍</h3>

    <div class="container">

    <div class="row">

    <div class="col-md-6 col-md-offset-3">

    <form action="" method="post">

    {% csrf_token %}

    <div>

    <label for="">书籍名称</label>

    <input type="text" class="form-control" name="title">

    </div>

    <div>

    <label for="">价格</label>

    <input type="text" class="form-control" name="price">

    </div>

    <div>

    <label for="">出版日期</label>

    <input type="date" class="form-control" name="date">

    </div>

    <div>

    <label for="">出版社</label>

    <input type="text" class="form-control" name="publish">

    </div>

    <input type="submit" class="btn btn-success pull-right">

    </form>

    </div>

    </div>

    </div>

    </body>

    </html>

    app01/books.html

    <!DOCTYPE html>

    <html lang="en">

    <head>

    <meta charset="UTF-8">

    <title>查看书籍</title>

    <link rel="stylesheet" href="/static/dist/css/bootstrap.css">

    <style>

    .container{

    margin-top: 100px;

    }

    .btn{

    margin-top: 10px;

    }

    </style>

    </head>

    <body>

    <h3>查看书籍</h3>

    <div class="container">

    <div class="row">

    <div class="col-md-6 col-md-offset-3">

    <a href="/addbook/" class="btn btn-primary">添加书籍</a>

    <table class="table table-striped table-bordered">

    <thead>

    <tr>

    <th>书籍名称</th>

    <th>价格</th>

    <th>出版日期</th>

    <th>出版社</th>

    <th>编辑操作</th>

    <th>删除操作</th>

    </tr>

    </thead>

    <tbody>

    {% for book in book_list %}

    <tr>

    <td>{{ book.title }}</td>

    <td>{{ book.price }}</td>

    <td>{{ book.pub_date|date:'Y-m-d' }}</td>

    <td>{{ book.publish }}</td>

    <td><a href="/books/{{ book.pk }}/change" class="btn btn-info">编辑</a></td>

    <td><a href="/books/{{ book.pk }}/delete" class="btn btn-danger">删除</a></td>

    </tr>

    {% endfor %}

    </tbody>

    </table>

    </div>

    </div>

    </div>

    </body>

    </html>

    app01/changebook.html

    <!DOCTYPE html>

    <html lang="en">

    <head>

    <meta charset="UTF-8">

    <title>编辑书籍</title>

    <link rel="stylesheet" href="/static/dist/css/bootstrap.css">

    <style>

    .container{

    margin-top: 100px;

    }

    .btn{

    margin-top: 10px;

    }

    </style>

    </head>

    <body>

    <h3>编辑书籍</h3>

    <div class="container">

    <div class="row">

    <div class="col-md-6 col-md-offset-3">

    <form action="" method="post">

    {% csrf_token %}

    <div>

    <label for="">书籍名称</label>

    <input type="text" class="form-control" name="title" value="{{ book_obj.title }}">

    </div>

    <div>

    <label for="">价格</label>

    <input type="text" class="form-control" name="price" value="{{ book_obj.price }}">

    </div>

    <div>

    <label for="">出版日期</label>

    <input type="date" class="form-control" name="date" value="{{ book_obj.pub_date|date:'Y-m-d' }}">

    </div>

    <div>

    <label for="">出版社</label>

    <input type="text" class="form-control" name="publish" value="{{ book_obj.publish }}">

    </div>

    <input type="submit" class="btn btn-success pull-right">

    </form>

    </div>

    </div>

    </div>

    </body>

    </html>

  • 相关阅读:
    Java学习之IO之File类一
    Java学习之二分查找算法
    Java学习之国际化程序
    Java学习之自定义异常
    Java学习之开篇—个人随想
    pl/sql 的 put和put_line区别
    Java中static、final用法
    一个包含所有c++的头文件的头文件
    Codeforces Round #379 (Div. 2)
    hdu-5977 Garden of Eden(树分治)
  • 原文地址:https://www.cnblogs.com/zhaop8078/p/12775504.html
Copyright © 2011-2022 走看看