处女贴,平时从社区学习到很多,今天做了一个复制功能,也贴出来分享给需要的人。
第一步:复制edit.html,另存为copy.html
第二步:打开js文件,增加一个复制按钮
{field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, buttons: [ { name: 'copy', text: __(''), title: __('复制'), classname: 'btn btn-xs btn-primary btn-dialog', icon: 'fa fa-copy', url: 'supplyadd/copy', }, ], formatter: Table.api.formatter.operate}
第三步:打开控制器文件,增加copy方法
/** * 复制 */public function copy($ids = NULL){ $row = $this->model->get($ids); if (!$row) $this->error(__('No Results were found')); $adminIds = $this->getDataLimitAdminIds(); if (is_array($adminIds)) { if (!in_array($row[$this->dataLimitField], $adminIds)) { $this->error(__('You have no permission')); } } if ($this->request->isPost()) { $params = $this->request->post("row/a"); if ($params) { try { //是否采用模型验证 if ($this->modelValidate) { $name = str_replace("\model\", "\validate\", get_class($this->model)); $validate = is_bool($this->modelValidate) ? ($this->modelSceneValidate ? $name . '.edit' : $name) : $this->modelValidate; $row->validate($validate); } $result = $this->model->allowField(true)->save($params); if ($result !== false) { $this->success(); } else { $this->error($row->getError()); } } catch (thinkexceptionPDOException $e) { $this->error($e->getMessage()); } catch (thinkException $e) { $this->error($e->getMessage()); } } $this->error(__('Parameter %s can not be empty', '')); } $this->view->assign("row", $row); return $this->view->fetch();}
希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 iCMS, Fastadmin, ClassCMS, LeCMS, PbootCMS, PHPCMS, 易优CMS, YzmCMS, 讯睿CMS, 极致CMS, Wordpress, HkCMS, YznCMS, WellCMS, ThinkCMF, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。