Список заказа не просмотреть должным образом в API LaravelPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Список заказа не просмотреть должным образом в API Laravel

Сообщение Anonymous »

Я новичок в Ларавеле. Я создаю управление складом в Ларавеле. Я хочу связать отношения со многими ко многим и одним ко многим, когда я просматриваю данные. Я поражен этой линией, я не получает детали заказа в продукте. Может ли кто -нибудь помочь мне выполнить индексную функцию загрузки OrderController. Таблица таблицы клиента и заказа и заказ продукта Как просмотреть данные как json: < /p>
foreach ($order->products as $product)
{
$arrayobj['order_products'][] = [
'product_id' => $product->id,
'product_name' => $product->name,
];
}
< /code>
Вот код продукта и клиента и заказа и заказать продукт. Мне нужно исправить с помощью индекса деталей API заказа и сохранить функцию внутри контроллера заказа: < /p>
client: < /p>
class Client extends Model
{
use HasFactory;

protected $primary_key = "id";
protected $table = "clients";
protected $fillable = [
'name',
'email',
'phone',
'address',
];

public function orders()
{
return $this->hasMany(Order::class);
}
}
< /code>
Product класс:
class Product extends Model
{
use HasFactory;
protected $primary_key = "id";
protected $table = "products";

protected $fillable = [
'product_code',
'product_name',
'stock_level',
'price',
'category_id',
];

public function category()
{
return $this->belongsTo(Category::class, 'category_id');
}

public function orders()
{
return $this->belongsToMany(Order::class, 'product_orders');
}
< /code>
Order класс:
class Order extends Model
{
use HasFactory;

protected $primary_key = "id";
protected $table = "orders";

protected $fillable = [
'order_number',
'total',
'client_id',
];

public function client()
{
return $this->belongsTo(Client::class);
}

public function products()
{
return $this->belongsToMany(Product::class, 'product_orders');
}
}
< /code>
ProductOrder:
class ProductOrder extends Model
{
use HasFactory;
protected $primary_key = "id";
protected $table = "product_orders";

protected $fillable = [
'product_id',
'order_id',
'qty',
];
}
< /code>
Here is the order controller
// retrieve data from client
public function index()
{
$orders = Order::with(['client', 'products'])->get();

// create empty array
$response_array = [];

// loop orders

foreach ($orders as $order)
{
$arrayobj = [
'order_number' => $order->order_number,
'client_id' => $order->client_id,
'total' => $order->total,
'order_products' => []
];

foreach ($order->products as $product)
{
$arrayobj['order_products'][] = [
'product_id' => $product->id,
'product_name' => $product->name,
];
}

// array_push()
}

return $response_array;
}


Подробнее здесь: https://stackoverflow.com/questions/788 ... aravel-api
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»