我有一个结构表,下面是图片。
我首先使用MenuController添加菜单:
public function storeData(Request $request)
{
$menu = new Menu($request->all());
$menu->save();
}
之后我添加了菜单的子菜单:
public function storeSubMenu(Request $request)
{
$menu = new Menu($request->all());
$menu->save();
}
在我使用的菜单模型文件中:
protected $fillable = ['mane', 'slug','sub_menu', 'sub_menu_slug','parent_menu_id'];
所以当我填写菜单和子菜单时,我不想传递不必要的数据,如1.菜单不需要传递子菜单项,2。子菜单不需要传递菜单名字和slu ..也是。
我使用$ fillable两次,并且在向数据库添加数据时出错。那么如何使用$ request-> all()来存储数据?我有什么帮助吗?
答案 0 :(得分:0)
除非你为此做出自己的查询,为什么不制作两个模型呢?一个用于菜单,另一个用于子菜单,与菜单项具有一对一的关系? 如果你考虑这个,那么我将在这里添加一些代码,否则我将不得不以其他方式思考。
答案 1 :(得分:0)
使用$fillable
时,您可以传递更多参数,但只会添加$fillable
。看看它的写作方式。查看Eloquent Mass Assignment了解详细信息。
$menu = Menu::create($request->all());