最近项目中需要做一个复制的功能, 更编辑一样,只是在提交的时候调用store保存就好了.下面直接抛代码
一,自定义列表按钮
protected function grid()
{
$grid = new Grid(new Model());
--
--
--
--
--
$grid->actions(function ($actions) {
//复制按钮
$actions->append('<a href="/admin/users/'.$actions->getKey().'/copys">
<span class="fa fa-copy" style="color: #f39c12;"></span> <span style="color: #1e282c">复制</span>
</a>'
);
});
return $grid;
}
二,按钮调用方法
这里其实跟edit 是一样的, 只是调用的表单修改一下就好了
public function copys($id, Content $content)
{
return $content
->header('复制')
->body($this->form_copy()->edit($id));
}
三,定义复制form方法
protected function form_copy()
{
$form = new Form(new Model());
$form->setAction('store_up'); // 这个是重点 设置form 提交 路由
return $form;
}
四,设置路由
$router->put('users/{id}/store_up', 'UsersController@store_up');
五,保存
public function store_up(){
return $this->form()->store();
}
就这样完事了…