Невозможно использовать объект типа Gloudemans \ Shoppingcart \ CartItem в качестве массива - PullRequest
0 голосов
/ 03 февраля 2020

Я сохраняю изображение в базе данных в виде массива ["product-04.jpg"]. Я не знаю, как отобразить изображение для просмотра. Я использовал Crinsane / LaravelShoppingcart и получил следующую ошибку: «Невозможно использовать объект типа Gloudemans \ Shoppingcart \ CartItem в качестве массива». Все могут мне помочь?

ProductController Я сохранил изображение в db:

if($request->hasFile('images')){

            $files = $request->file('images');

            $extension = ['png','jpg','gif','jepg'];

            foreach ($files as $key => $item) {

                $nameFile = $item->getClientOriginalName();

                $exFiles = $item->getClientOriginalExtension();

                if(in_array($exFiles, $extension)){

                    $item->move(public_path().'/upload/images',$nameFile);
                    $arrNameFile[] = $nameFile;
                }
            }
        }

        if($arrNameFile){

            $dataInsert = [
                'name_product' => $nameProduct,
                'categories_id' => json_encode($categories),
                'colors_id' => json_encode($colors),
                'sizes_id' => json_encode($sizes),
                'brands_id' => $brand,
                'price' => $price,
                'qty' => $qty,
                'description' => $description,
                'image_product' => json_encode($arrNameFile),
                'sale_off' => $sale,
                'status' => 1,
                'view_product' => 0,
                'created_at' => date('Y-m-d H:i:s'),
                'updated_at' => null
            ];
            if($pd->addDataProduct($dataInsert)){
                $request->session()->flash('addPd','success');
                return redirect()->route('admin.products');
            } else {
                $request->session()->flash('addPd','Fail');
                return redirect()->route('admin.addProduct');
            }
        } else {
            $request->session()->flash('addPd','Can not upload image');
            return redirect()->route('admin.addProduct');
        }
    }

CartController: я добавляю продукты и хочу показать список продуктов в корзине

public function addCart(Request $request, $id)
    {
        $product = Products::select('name_product', 'id', 'price', 'qty', 'image_product')->find($id);

        if(!$product) return redirect('/');

        Cart::add([
                        'id' => $id,
                        'name' => $product->name_product,
                        'qty' => 1,
                        'price' => $product->price,
                        'options' => [
                            'images' => json_decode($product->image_product, true),
                        ]
                    ]);
        return redirect()->back();
    }
    public function getListCart(){
        $products =  Cart::content();
        return view('frontend.cart.showCart', compact('products'));
    }

И посмотреть, я получаю изображение в sr c: {{ URL::to('/') }}/upload/images/{{ $product->image_product[0] }}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...