When I trigger foreach to show the products registered in each process, separated by line and column, it returns the result all in just one line.
Sorry about my English
Example:
ID | header 2 |
---|---|
1525, 1523 | Item 1, Item 2 |
what i want to show
ID | Name |
---|---|
1525 | Item 1 |
1523 | Item 2 |
Back End: `
public function viewLicitacao($id) {
$licitacao = Licitacao::find($id); $this->showModalLicitacao();
$this->licitacao_id_processo = $licitacao->id;
$this->licitacao_destino = $licitacao->cliente_nome;
$this->licitacao_date_entrega = $licitacao->date_entrega;
}
Front End:
@if($isModal == true)
@foreach($licitacao as $processo)
<div id="ModalLicitacao">
<div >
<div >
<div >
<h4 >Licitação - {{ $processo->id; }}</h4>
<button type="button" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div >
<h4>Informações das licitações</h4>
<div >
<div >
<div >
<label>N° do Processo: </label>
<input type="number" wire:model="licitacao_id_processo" placeholder="Informe o N° do processo" readonly/>
</div>
</div>
<div >
<div >
<label for="destino">Destinatário: </label>
<input type="text" wire:model="licitacao_destino" placeholder="Informe o nome do destinatário" readonly/>
</div>
</div>
<div >
<div >
<label>Data da entrega:</label>
<input type="text" wire:model="licitacao_date_entrega" placeholder="Data de entrega da mercadoria" readonly>
</div>
</div>
</div>
<h4>Produtos da licitação</h4>
<div >
<table >
<thead>
<tr>
<th>ID</th>
<th>Nome</th>
<th>Preço Unit</th>
<th>Quantidade</th>
<th>Qt. Disponivel</th>
<th>Ações</th>
</tr>
</thead>
<tbody>
@forelse($processo->products as $key => $products)
<td>{{ $products->id_product }}</td>
@empty
<td>Nenhum produto foi cadastrado nessa licitação</td>
@endforelse
</tbody>
</table>
</div>
</div>
<div >
<button type="submit" wire:click="closeModalLicitacao()" >Fechar</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
@endforeach
<!-- /.modal -->
@endif
The two tables have relationships
Modal ProductLicitacao:
class ProductLicitacao extends Model
{
use HasFactory;
protected $fillable = [
'id_product', 'licitacao_id', 'name', 'qty', 'price_unit',
];
public function licitacao()
{
return $this->belongsTo(Licitacao::class);
}
}
Modal Licitacao:
class Licitacao extends Model
{
use HasFactory;
protected $fillable = [
'processo_number', 'cliente_nome', 'status', 'user_id', 'date_entrega', 'alert',
];
protected $dates = [
'date_entrega'
];
public function products()
{
return $this->hasMany(ProductLicitacao::class, 'licitacao_id');
}
}
Help me to solve this problem that seems to be simples, but it is being monstrous for my iniation in web development.
CodePudding user response:
Try adding the tag <tr>
before the <td>
<tbody>
@forelse($processo->products as $key => $products)
<tr>// <-- here
<td>{{ $products->id_product }}</td>
//other columns(td), you may have
</tr>// <-- and here
@empty
<td>Nenhum produto foi cadastrado nessa licitação</td>
@endforelse
</tbody>