目录
单表操作
提前将数据库连接、app注册、静态文件、模型表等配置修改完成
app01文件夹
models.py主要代码
class Book(models.Model):
title = models.CharField(max_length=64)
price = models.DecimalField(max_digits=8,decimal_places=2)
view.py主要代码
from django.shortcuts import render,HttpResponse,redirect,reverse
from app01 import models
# Create your views here.
def index(request):
book_list = models.Book.objects.all()
return render(request,'index.html',{'book_list':book_list})
def add(request):
if request.method =='POST':
title = request.POST.get('title')
price = request.POST.get('price')
models.Book.objects.create(title=title,price=price)
return redirect('/index/')
return render(request,'add.html')
def edit(request,edit_id):
book_list = models.Book.objects.filter(id=edit_id).first()
if request.method=='POST':
title = request.POST.get('title')
price = request.POST.get('price')
models.Book.objects.filter(id=edit_id).update(title=title,price=price)
return redirect('/index/')
return render(request,'edit.html',{'book_list':book_list})
def delete(request,del_id):
models.Book.objects.filter(id=del_id).delete()
return redirect('/index/')
urls.py主要代码
from app01 import views
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^index/',views.index,name='index'),
url(r'^add/',views.add,name='add'),
url(r'^edit/(\d+)',views.edit,name='edit'),
url(r'^delete/(\d+)',views.delete,name='del'),
]
template文件夹
index.html主要代码
...
<a href="/add/" class="btn btn-success pull-right">新增</a>
...
...
{% for book in book_list %}
<tr>
<td>{{ book.id }}</td>
<td>{{ book.title }}</td>
<td>{{ book.price }}</td>
<td>
<a href="/edit/{{book.id}}/" class="btn btn-primary btn-sm">编辑</a>
<a href="/delete/{{book.id}}/" class="btn btn-danger btn-sm">删除</a>
</td>
</tr>
{% endfor %}
add.html主要代码
<form action="" method="post">
<p>图书名: <input type="text" name="title" class="form-control"></p>
<p>价格: <input type="text" name="price" class="form-control"></p>
<input type="submit" class="btn btn-warning pull-right">
</form>
edit.html主要代码
<form action="" method="post">
<p>图书名: <input type="text" name="title" class="form-control" placeholder="{{ book_list.title }}"></p>
<p>价格: <input type="text" name="price" class="form-control" placeholder="{{ book_list.price }}"></p>
<input type="submit" class="btn btn-warning pull-right">