linux 系统下对Django框架的数据库对象增删改查:
1: 用pycharm 在bookstore 文件夹中创建templates目录,在templates目录下创建bookstore文件夹,然后创建add_book.html 文件
编写添加图书的页面:
<html lang="en">
<head>
<meta charset="UTF-8">
<title>添加新书</title>
<style>
#addBook{
width: 500px;
height: 400px;
background-color: #eee;
color: #888;
border: 0px solid red;
}
#addBook div{
width: 100%;
height: 60px;
border: 0px solid blue;
}
#addBook h2{
display: inline-block;
width: 100%
height: 80px;
}
#addBook .submit{
display: inline-block;
padding: 10px 10px;
margin-top: 20px;
margin_left: 20px;
}
</style>
</head>
<body>
<form action="/bookstore/add_book" method="post">
<div id="addBook">
<h2>添加图书</h2>
<div class="title">
<label>请输入书名:</label>
<input type="text" name="title">
</div>
<div class="price">
<label>请输入定价:</label>
<input type="text" name="price">
</div>
<div class="publisher">
<label>请输入出版社:</label>
<input type="text" name="publisher">
</div>
<div class="marketPrice">
<label>请输入市场价:</label>
<input type="text" name="marketPrice">
</div>
<input type="submit" value="添加图书">
</div>
</form>
</body>
2: 增加 数据库的所有操作转为ORM模型 的操作 models.objects.create
用pycharm软件找到bookstore目录下的views.py文件,在下面定义添加书本函数
def add_book_view(request):
if request.method == "GET":
return render(resquset, "bookstore/add_book.html")
elif request.method == "POST":
title = request.POST.get("title")
price = request.POST.get("price")
market_Price = request.POST.get("marketPrice")
publisher = request.POST.get("publisher")
try:
models.Book.objects.create(
title=title,
price=price,
market_price = market_Price,
publisher=publisher
)
retun HttpResponse("图书添加成功!")
except Exception as err:
return HttpResponse("图书添加失败!") -->
3: 用pycharm 在bookstore 文件夹中找到urls.py 添加add_book_view的路由:
from django.urls import path, re_path
from . import views
urlpatterns = [
re_path(r’add_book’, views.add_book_view),
re_path(r’add_author’, views.add_author_view),
re_path(r’all’, views.show_all_view)
]
4: 进入项目目录重启服务:
cd /project/mysite4/mysite4
python3.9 manage.py runserver 0.0.0.0:5000
5: 用浏览器输入 192.168.0.240:5000/bookstore/addBook
添加图书测试
6: 进入数据库查询是否成功
mysql -uropot -p
mysql> use mysite4_db;
mysql> select * from bookstore_book;
+----+-----------------+----------+-----------------------+--------------+----------------------------+
| id | title | price | publisher | market_price | pubdate |
+----+-----------------+----------+-----------------------+--------------+----------------------------+
| 1 | 九阳神功 | 19999.00 | 清华大学出版社 | 29999.00 | 2022-08-22 02:18:49.807497 |
| 6 | 降龙十八掌 | 35555.00 | 番禺沙墟酒堂 | 39999.00 | 2022-08-22 06:29:08.772649 |
| 7 | 九阴真金 | 39999.99 | 黄编羽毛球馆 | 49999.99 | 2022-08-22 06:32:11.236109 |
| 8 | 西游记 | 88.00 | 番禺教育局 | 98.00 | 2022-08-22 06:50:26.138473 |
| 10 | 三国演艺 | 1888.00 | 广州教育局 | 2000.00 | 2022-08-22 06:54:38.948746 |
+----+-----------------+----------+-----------------------+--------------+----------------------------+
5 rows in set (0.00 sec)
添加操作已经完成