TP商城攻克第二天

每一个控制器之中创建相对应的方法,如下图


其中在本项目之中,由于是商城项目,所以在每一个对应的控制器上面,创建相对应的add(添加),edit(编辑),lst(展示),这三个方法,并且创建相对应的html的页面。

下一步,为了实现数据库的搜索,排序还有展示出来的翻页功能,我们再一次在商品的模型之中创建了search方法


在这里说明一下上文所说的那个钩子函数便是在模型之中写入的,可以说TP3.2框架之中,大部分的方法都是通过写入模型之中,然后来实现的,而控制器之中的方法在一般的情况下是大致雷同的,还有一个就是插入数据库的钩子方法,这两个一般是要使用引用传递的。


然后现在说回那一个search方法,那个方法就是让数据库里面的数据可以有序的展示在我们的面前,而其翻页功能则是使用这个框架里面有的类Page,这个便是翻页类,下图便是具体用法


然后最终那一个search方法便是套入相对应的模板,最终效果如下图。


随后便是将每一个方法相对应的页面模板放到相对应的文件夹里面,表单提交的方式我们这里为了方便,采用GET方式,并且提交的 目的地也是使用TP3.2自带的常量,例如__ACTION__(传递自身,但是不包含参数),__SELF__(传递自身,包括参数)。

接下来,为了让search方法里面相对应的条件生效 ,和立即生效,便是修改对应模板里面的表单。

其中排序方式比较特殊,属于立即生效的类型,所以 便使用相对应的JavaScript代码,使其能够直接提交。最后便是在商品模型之中写入相对应的规则。


这样便是完成了对应的add方法了 ,接下里便开始建立相对应的edit方法,而在这里便是如同我们所说的,控制器的方法大部分是雷同的,所以我们便直接复制了在同一个控制器下的add方法来使用,并且稍作修改。

其中编辑和添加最大的差别便是在于二者表单上面的不同,编辑表单是要取出相对应要编辑的数据,将其修改,并且覆盖到相对应的数据库之上,而添加一开始则是完全清空,将数据添加进去。


如上图,将他们一一打印出来,而在TP3.2框架里面是可以使用类似的省略风格的,这一些都是可以在config.php这一个配置文件里面,将其修改,而在这里我们将使用原生态的风格。

而在修改数据的同时,也要将相对应的数据库内容和图片这一类的数据修改,数据库修改便是写在控制器的edit方法之中,而图片这一类资源的修改便是写在钩子函数之中,这里我便使用了_before_update()这个方法。



其中都使用了框架之中自带的类,图片类和上传文件的类。

有了编辑,添加,自然就会有删除,在这里,我便在展示的页面里面添加了一个删除的按钮,并且让其自动跳转到对应的删除方法,结束之后便进行提示,最后在跳转回展示页面,这里便再一次使用了字母函数U(),这一个链接用的函数。




并且在删除之后,将图片这一类的资源一并删除,而在这里我们也使用了相对应的钩子函数


再大致上进行修改了之后,便大致完成了一个页面在数据库之上的CRUD操作,接下来,因为一般一个项目都会有大量相同的部分,例如导航栏,商城LOGO,页头页尾等等,所以在这里我们便使用了布局规划页面,将共同的部分写入一个文件,方便日后的维护。


紧接着便在要使用的页面之中使用layout标间引入布局文件,并且将对应的title这一类的属性,写成一个变量,方便在相对应的控制器方法之中写入。如下图


然后基于上面的那一种想法,由于一个商城项目需要太多的图片展示。所以我们会将显示图片的方法和相对应的配置写入相对应 的文件之中,如下图。



这便是大致完成了一个商品控制器,模型,视图大致上的配置。随后便开始下一张表对应的控制器,模型,视图的编辑。在这里我使用了一个大神配置的GII代码。至于GII是什么,GII是一种方便生成需要的数据库操作代码而编写出来的小工具,而这一种东西貌似只有YII框架之中有自带,其他框架都要自行编写。


第二天的代码编写结束

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值