这一篇教程,我们把前面所学的内容做一下巩固练习,并且再接触一些新的知识内容,例如视图向JS返回数据时的处理以及JQuery中循环的使用等等。
先来看看,我们要实现的目标。
一、完成商品列表以及页面内容的呈现。
先不管添加和查询功能,我们先把上方呈现的页面实现出来。
1、创建模型(models.py)
这次我们创建的模型类,以商品名称为主键。
示例代码:
class GoodsInfo(models.Model): goods_name = models.CharField(max_length=30, <strong>primary_key=True</strong>) goods_number = models.IntegerField() goods_price = models.FloatField()
创建好模型类之后,通过“makemigrations”和“migrate”创建数据表,并将数据导入数据库。
提示:《 Django2:Web项目开发入门笔记(8) 》中包含所需的数据内容和导入方法。
2、创建模板(goods_list.py)
在模板文件中我们写入HTML代码。
示例代码:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>管理商品</title> </head> <body> <h3>商品列表</h3> 价格查询:<input type="text" style="display:inline-block;width:100px;" id="min_price"> ~ <input type="text" style="display:inline-block;width:100px;" id="max_price"> <button type="button" id="search">确定</button> <br> <br> <div id="list"> {% for goods in goods_list %} <div id="{{ goods.goods_name }}"> <label style="display:inline-block;width:120px;">名称:{{ goods.goods_name }}</label> <label style="display:inline-block;width:90px;">数量:{{ goods.goods_number }}</label> <label style="display:inline-block;width:90px;">价格:{{ goods.goods_price }}</label> <button class="delete" type="button" id="{{ goods.goods_name }}">删除</button> <br> </div> {% endfor %} </div> <br> 名称:<input type="text" style="display:inline-block;width:65px;" id="goods_name"> 数量:<input type="text" style="display:inline-block;width:40px;" id="goods_number"> 价格:<input type="text" style="display:inline-block;width:40px;" id="goods_price"> <button type="button" id="add">添加</button> <label id="add_msg"></label> </body> </html>
注意,上方代码中每个标签都有“id”属性,这个属性方便我们实现之后添加的功能。
特别是,商品列表中每个删除按钮的“id”,这里使用了每条商品信息中的商品名称做为属性值,实现删除功能时,就可以依据这个“id”属性的值进行删除。
另外,每一条商品信息的多个“label”标签和删除按钮的“button”标签,都写在一对“div”标签中。
查看更多关于Django2:Web项目开发入门笔记(10)的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did181971