Xpressengine\Category\CategoryHandler::createItem PHP Méthode

createItem() public méthode

Create a new category item
public createItem ( Category $category, array $inputs ) : CategoryItem
$category Xpressengine\Category\Models\Category category instance
$inputs array item attributes for created
Résultat Xpressengine\Category\Models\CategoryItem
    public function createItem(Category $category, array $inputs)
    {
        /** @var CategoryItem $item */
        $item = $category->items()->create($inputs);
        $this->setHierarchy($item);
        $this->setOrder($item);
        // 아이템이 추가되면 카테고리 그룹의 아이템 수량을 증가 시킴
        $category->increment($category->getCountName());
        return $item;
    }

Usage Example

 public function storeItem(CategoryHandler $handler, $categoryId)
 {
     $category = $handler->get($categoryId);
     $inputs = Input::except('_token');
     $parent = null;
     if (isset($inputs['parentId'])) {
         if (empty($inputs['parentId']) === false) {
             $parent = $handler->getItem($inputs['parentId']);
         }
         unset($inputs['parentId']);
     }
     DB::beginTransaction();
     try {
         $item = $handler->createItem($category, $inputs, $parent);
     } catch (Exception $e) {
         DB::rollBack();
         throw $e;
     }
     DB::commit();
     return Presenter::makeApi($item->toArray());
 }