tp3.2 表单自动构建

用thinkphp3.2时候,多数增删改查的页面基本相似。但是需要一个个去修改,修改列表字段,修改添加、编辑表单,重复工作要做好多次,有什么好的思路去做代码复用了?

参考大家的意见我做了如下的实现,请大家看一下谢谢:

1.先在行为中生成每个表的配置文件

$tables=M()->query('show tables');        $ts=[];foreach($tablesas$v) {            $ts[]=$v['tables_in_addon'];        }// 显示每个表的字段$fields=[];foreach($tsas$v) {            $fields[$v]=M()->query("show FULL FIELDS from {$v}");        }// 遍历生成配置文件foreach($fieldsas$k => $v) {            $filename=$k.".php";            $path=APP_PATH.'Common\Conf\Data';            is_dir($path)||mkdir($path,0777,true);            $str="

2.然后在基础控制器中,读取控制器中数据,并分配到模版.

publicfunction__construct(){parent::__construct();        $filename=C('DB_PREFIX')."_".lcfirst(CONTROLLER_NAME).".php";// 读取指定的配置器文件$bd=requireCOMMON_PATH.'/Conf/Data/'.$filename;$this->assign('bd',$bd);            }

3.在模版页面中根据字段生成表格,这里大多数input类型为text,所以我们没有做表单的类型判断.

:

有几个问题:

1.这样做有什么安全隐患,config目录下的表配置文件直接访问的话,直接会暴露数据库中的字段信息吧.

2.代码存在哪些问题,该怎么优化;还有什么好的解决思路.

你可能感兴趣的:(tp3.2 表单自动构建)