Проблема в чём.. Раньше $items->attributes, возвращало весь массив опций выбранный клиентом. Сейчас же нихрена! Я обновил модули... Теперь не могу получить их список в админке. $item->associatedModel - ругается, в массиве выдаёт данные в корзине, но не могу получить эти данные на беке. Там массив внутри массива!
В чекауте работает @foreach($item->associatedModel as $key => $value)
А в админке я не могу получить массив внутренний. Из серии {{ $value }} . Массив из $item получить не проблема, а вот что внутри проблема.
Крч мне нужно получить массив из атрибутов $item->associatedModel. В базе attribute_value это JSON. Но он мне вечно NULL выдает по запросу. Крч я очень туплю, не могу понять где?!)
Тупость - не порок!
Не вижу смысла, но для нужд, модель:
<?php
namespace App\Repositories;
use Cart;
use App\Models\Order;
use App\Models\Product;
use App\Models\OrderItem;
use App\Contracts\OrderContract;
class OrderRepository extends BaseRepository implements OrderContract
{
public function __construct(Order $model)
{
parent::__construct($model);
$this->model = $model;
}
public function storeOrderDetails($params)
{
$order = Order::create([
'order_number' => strtoupper(uniqid()),
'user_id' => auth()->user()->id,
'status' => 'pending',
'grand_total' => Cart::getSubTotal(),
'item_count' => Cart::getTotalQuantity(),
'payment_status' => 0,
'payment_method' => $params['pay'],
'discord' => $params['discord'],
'battle_tag' => $params['battle_tag'],
'skype' => $params['skype'],
'email' => $params['email'],
'notes' => $params['notes'],
]);
if ($order) {
$items = Cart::getContent();
foreach ($items as $key => $item)
{
// A better way will be to bring the product id with the cart items
// you can explore the package documentation to send product id with the cart
$product = Product::where('name', $item->name)->first();
$orderItem = new OrderItem([
'product_id' => $product->id,
'quantity' => $item->quantity,
'qty_slider' => $item->qty_slider, // Принимает значения слайдера.
'price' => $item->getPriceSum(),
'attribute_value' => $item, // Вот тут фокус. Собирает пачку в JSON, дальше не разобрать. До апдейта работало норм. Сейчас же костыль нужен какой-то..
]);
$order->items()->save($orderItem);
}
}
return $order;
}
public function listOrders(string $order = 'id', string $sort = 'desc', array $columns = ['*'])
{
return $this->all($columns, $order, $sort);
}
public function findOrderByNumber($orderNumber)
{
return Order::where('order_number', $orderNumber)->first();
}
}
Вот чекаут
@foreach(Cart::getContent() as $item)
<div class="card_item">
<div class="left_tems">
<a href="{{ $item->slug }}" class="col_img">
<img src="{{ $item->conditions }}" alt="">
</a>
<div class="col_name">
<span class="name">{{ Str::words($item->name,20) }}</span>
@foreach($item->associatedModel as $key => $value)