[PROMOÇÃO] Assine com + 30% de desconto ANUAL MENSAL (últimas horas)
Bruno Henrique da Costa
Criador Bruno Henrique da Costa 23/02/2023

No caso esta retornando os dados do produto na busca por um pedido, porém gostaria de retornar a quantidade também que foi feito aquele produto naquele pedido, ou seja estamos exibindo as informações da tabela products, e não da tabela order_product, teria como exibir as informaçoes da tabela order_product, ao invés de product?

Manager Carlos Ferreira 23/02/2023

Olá, Bruno!
Como vai?

Existem alguns caminhos possíveis, um deles é criar um model para representar a tabela pivô:
https://laravel.com/docs/10.x/eloquent-relationships#defining-custom-intermediate-table-models

Outra alternativa, é recuperar os dados da tabela intermediária, no caso da tabela order_product:
https://laravel.com/docs/10.x/eloquent-relationships#retrieving-intermediate-table-columns

Pegou a ideia amigo?

Carlos Ferreira
Criador Bruno Henrique da Costa 23/02/2023

Entendi sim, e no caso junto com o resource, como ficaria? Sera q teria como dar uma ideia?

Bruno Henrique da Costa
Manager Carlos Ferreira 23/02/2023

Retornando os dados certinho, basta exibir no seu resource, normalmente:
'value' => $this->value,

--

Está tendo algum erro?
Compartilha comigo, que te ajudo de forma mais direcionada.

Carlos Ferreira
Criador Bruno Henrique da Costa 23/02/2023

Mesmo eu colocando ->withPivot('quantity', 'price'), não deu certo não, ainda o resultado continuou retornando 

 
{
"data": {
"id": "989585c9-f42e-4db1-a9d2-7b5d72a72410",
"identify": "W9X9Y8L6",
"total": 115,
"status": "open",
"status_label": "Aberto",
"date_created": "01/03/2023",
"company": {
"name": "Company Name S.A.",
"image": null,
"id": "95d7dd53-c9d7-4370-acf0-e36ffc157446",
"flag": "company-name-s.-a.",
"contact": "[email protected]",
"date_created": "22/02/2023"
},
"customer": null,
"table": null,
"products": [
{
"title": "Produto 1",
"image": null,
"id": "f8b44bff-a9a1-4a52-b0c0-49c705a14ea1",
"price": 50,
"flag": "flag 1",
"description": null,
"categories": [
{
"id": "083dde4d-dcd7-4b16-b820-ddbaeb91bd0e",
"company_id": "95d7dd53-c9d7-4370-acf0-e36ffc157446",
"name": "Categoria 1",
"url": "categoria1",
"description": null,
"created_at": "2023-02-22T21:31:29.000000Z",
"updated_at": "2023-02-22T21:31:29.000000Z",
"deleted_at": null,
"pivot": {
"product_id": "f8b44bff-a9a1-4a52-b0c0-49c705a14ea1",
"category_id": "083dde4d-dcd7-4b16-b820-ddbaeb91bd0e"
}
}
],
"date_created": "22/02/2023"
},
{
"title": "Produto 2",
"image": null,
"id": "0d8bcfa3-e11f-4fca-a94d-c66d549cd4aa",
"price": 65,
"flag": "flag 2",
"description": null,
"categories": [
{
"id": "4916665e-5bfa-4d59-9296-1f0fe50182a4",
"company_id": "95d7dd53-c9d7-4370-acf0-e36ffc157446",
"name": "Categoria 3",
"url": "categoria3",
"description": null,
"created_at": "2023-02-22T21:31:29.000000Z",
"updated_at": "2023-02-22T21:31:29.000000Z",
"deleted_at": null,
"pivot": {
"product_id": "0d8bcfa3-e11f-4fca-a94d-c66d549cd4aa",
"category_id": "4916665e-5bfa-4d59-9296-1f0fe50182a4"
}
}
],
"date_created": "22/02/2023"
}
]
}
tenho um repositório com esse projeto, se puder me ajudar
 
https://github.com/bhcosta90-especializati/larafood
 
 
Bruno Henrique da Costa
Manager Carlos Ferreira 23/02/2023

Olá, Bruno!
Como vai?

Onde você colocou os relacionamentos (->with())?
https://github.com/bhcosta90-especializati/larafood/blob/master/app/Repositories/Eloquent/OrderEloquentRepository.php#L35

--

Aqui no seu OrderResource faltou retornar essas informações 'quantity', 'price':
https://github.com/bhcosta90-especializati/larafood/blob/master/app/Http/Resources/OrderResource.php
'quantity' => $this->quantity,
'price' => $this->price,

---

De onde vem estes relacionamentos quantity e price? Qual model?

Carlos Ferreira
Criador Bruno Henrique da Costa 23/02/2023

Consegui Carlos, o problema era os resources e como eu relacionava também, estava usando tabela pivot e não era preciso, pq a order product é diretamente, portanto eu poderia utilizar hasMany no Model Order

Bruno Henrique da Costa
Manager Carlos Ferreira 23/02/2023

Perfeito amigo, meus parabéns!

Carlos Ferreira
Sabe a Solução? Ajude a resolver!

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!