Example #1
0
 /**
  * 重写add方法,借助嵌套集合模型实现
  * @return mixed
  */
 public function add()
 {
     //处理边界问题,借助于netstetsets插件
     $mydb = new DbImplementServer();
     //得到实现接口的相关对象
     $netstedsets = new NestedSetsServer($mydb, 'permission', 'lft', 'rgt', 'parent_id', 'id', 'level');
     //insert 方法会自动将其他数据插入到数据表中
     return $netstedsets->insert($this->data['parent_id'], $this->data, 'bottom');
 }
Example #2
0
 /**
  * 重写add方法,保存菜单权限关系
  * @param mixed|string $requestData
  * @return bool
  */
 public function add($requestData)
 {
     //保存菜单信息,借助于netstetsets插件
     $mydb = new DbImplementServer();
     //得到实现接口的相关对象
     $netstedsets = new NestedSetsServer($mydb, 'menu', 'lft', 'rgt', 'parent_id', 'id', 'level');
     $id = $netstedsets->insert($this->data['parent_id'], $this->data, 'bottom');
     //insert 方法会自动将其他数据插入到数据表中
     if ($id === false) {
         return false;
     }
     //保存菜单权限关系
     $rst = $this->handleMenuPermission($id, $requestData['permission_ids']);
     if ($rst === false) {
         return false;
     }
     return $id;
 }