laravel-admin 中关于json组件表单的难点请教
由于后台样式问题,现需求是使用选项卡表单配合json组件来实现后台的增删改查导航和版块。
但是json组件是以json格式储存到数据库中,现在需要将json格式遍历成数据库中对应字段的逐条。再存入数据库中。
也就是转换成对应的
现在后台的form到是写好了。问题就出在于应该 如何读取现有的以
格式存储在数据表中的数据。
<?php
namespace App\Admin\Forms\Navs;
use Encore\Admin\Widgets\Form;
use Illuminate\Http\Request;
use App\Admin\Models\CommonNav;
class admincp_nav_Nav extends Form
{
public function __construct()
{
$this->title = trans('admin.navs.nav.table_name_Nav');
parent::__construct();
}
/**
* The form title.
*
* @var string
*/
public $title;
/**
* Handle the form request.
*
* @param Request $request
*
* @return \Illuminate\Http\RedirectResponse
*/
public function handle(Request $request)
{
}
/**
* Build a form here.
*/
public function form()
{
$this->table('common_navs',trans('admin.navs.nav.nav_list'), function ($table) {
$table->text('displayorder', trans('admin.navs.nav.nav_displayorder'))->rules('nullable|numeric|integer|min:1');
$menu = [
'off' => ['value' => 0, 'text' => trans('admin.no'), 'color' => 'danger'],
'on' => ['value' => 1, 'text' => trans('admin.yes'), 'color' => 'success'],
];
$table->switch('menu', trans('admin.navs.nav.nav_menu'))->states($menu);
$table->text('name', trans('admin.navs.nav.nav_name'))->rules('required');
$table->text('url', trans('admin.navs.nav.nav_url'))->rules('required');
$target = [
'off' => ['value' => 0, 'text' => trans('admin.no'), 'color' => 'danger'],
'on' => ['value' => 1, 'text' => trans('admin.yes'), 'color' => 'success'],
];
$table->switch('menu', trans('admin.navs.nav.nav_target'))->states($target);
});
$this->disableReset();
}
/**
* The data of the form.
*
* @return array $data
*/
public function data()
{
return [
];
}
}
现在data里不知道应该怎么读取现有的数据。另外handle里应该怎么将json格式再次转换成这样的格式存储。
又是被问题困扰的一天