前言
添加数据
(1)实现view
store/views.py
获取name 与 address的值,添加到数据库,返回 AddSuccess字样
# 添加一条store信息
def add_store_info(request):
name = request.POST['name']
address = request.POST['address']
create = StoreInfo.objects.create(name=name, address=address)
print(type(create), create)
return HttpResponse("Add Success")
(2)实现 表单
store/templates/store_list.html
注意: 表单中需要添加 {% csrf_token %}
Add
{% csrf_token %}商店名称: 商店地址 :(3)配置URLS
store/urls.py
代码如下:
urlpatterns = [
url(r'^list$', views.select_store_list),
url(r'^add$', views.add_store_info), #添加对应的信息
]
结果 :
views中 打印的创建返回值结果如下:
拉面南京东路 #返回的值 是创建的对象
删除一条信息
(1)实现view
store/views.py
描述:通过pk主键(id)查询后,进行删除操作,并打印删除后返回值,返回Delete Success字样
# 删除一条store信息
def delete_store_info(request, pk):
storeInfo = StoreInfo.objects.get(pk=pk)
delete = storeInfo.delete()
print(type(delete), delete)
return HttpResponse("Delete Success")
(2)配置Url
store/urls.py
代码如下:
urlpatterns = [
url(r'^list$', views.select_store_list),
url(r'^add$', views.add_store_info),
url(r'^delete/(?P[0-9]+)$', views.delete_store_info), #删除操作的url,后面是正则pk的写法
]
(3) 模板实现如下
store/templates/store_list.html
实现如下
名称 | 地址 | 操作 |
---|---|---|
{{ foo.name }} | {{ foo.address }} | 删除 |
执行后结果预览:
打印的返回值如下 :
(1, {'store.StoreInfo': 1}) #影响数据的行数
总结
这里需要注意的是 表单提交的时候 需要添加 {% csrf_token %} ,才可以通过。 更新操作就不写了,后面将进行深入的学习。