第三天攻克TP3.2商城

我们在完成了商品表对应的控制器,模型和视图的编写之后,便开始品牌的编写,而且要将这两张表给联动起来,这里就要去了解表与表之间的几种关系了,分别是1对1,1对多,多对多。

而早这里 的商品和品牌便是1对多的关系,所以便要添加对应的索引和在商品表添加一个字段,一般是另外一张表的主键。

第三天攻克TP3.2商城

接下来的编写,便是基于使用GII(别人编写的代码,只有YII框架有自带)生成的代码来编写,接下来的操作便是和商品表的差不多,都是编写控制器,模型,视图里面的代码,并且修改模板之上的代码,使其可以和数据库的数据联动。

而在这里。由于是多表关联,所以便使用了对应的LEFT JOIN操作,而在框架之中,使用模型自带的方法里面,便有着基本数据库操作的代码,如下图。

第三天攻克TP3.2商城

然后又由于大部分页面都有着需要下拉框的作用,所在在这里,我们也将下拉框的代码封装在一个方法里面,顺带说一下,那个方法是放在Common/Common/function.php这个文件里面,这个文件,是放置所有公用方法的文件,比如上一篇所说的,图片生成方法便是放在这里。

在完成了这一些操作之后,便开始对会员等级表,会员等级对应的价格表进行编写,也是使用GII生成。最后的效果如下图

第三天攻克TP3.2商城

然后为了在删除商品的同时,将对应商品的会员价格也删除,会员价格是独立一张表的,所以我们这里将使用外键约束,让其在删除商品的同时,也将对应的会员价格删除。

第三天攻克TP3.2商城

在处理了这一些之后,我们便考虑在页面之中实现无刷新删除,也就是将商品相册的图片进行无刷新删除,保证了其他的数据不会丢失的同时,将图片删除,这里便要使用局部刷新无影响的技术AJAX技术。

第三天攻克TP3.2商城

利用AJAX来调用放在function.php文件里面的方法,实现无刷新删除。