提问人:tomasraigal 提问时间:7/25/2023 最后编辑:tomasraigal 更新时间:7/25/2023 访问量:23
如何使用 maatwebsite/excel 在 laravel 6 中制作下拉列表?
How to make a dropdown list in laravel 6 with maatwebsite/excel?
问:
我需要知道如何使用 maatwebsite/excel 创建下拉列表。 问题是从表格中消除第 1、2、3 项......并留下 2 个下拉列表,一个包含截止日期的数量,另一个包含截止日期的状态。
这是我的导出类。
<?php
namespace App\Exports;
use Maatwebsite\Excel\Concerns\WithMultipleSheets;
class InformeExport implements WithMultipleSheets
{
protected $lista;
public function __construct($lista)
{
$this->lista = $lista;
}
public function sheets(): array
{
$sheets = [];
$sheets[] = new InformePlazosSheet($this->lista, 'Plazos');
return $sheets;
}
}
这是 InformePlazosSheet 文件。
<?php
namespace App\Exports;
use App\Models\Abonado;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
use Maatwebsite\Excel\Concerns\WithTitle;
class InformePlazosSheet implements FromView, WithTitle
{
private $lista;
private $nombre;
public function __construct($lista, $nombre)
{
$this->lista = $lista;
$this->nombre = $nombre;
}
/**
* @return Builder
*/
public function view(): View
{
$abonados = Abonado::join('abonado_lista_abonado_plazos', 'abonado_lista_abonado.id', '=', 'abonado_lista_abonado_plazos.abonado_lista_abonado_id')
->where('abonado_lista_abonado.lista_id', $this->lista->id)
->select('abonado_lista_abonado.*')
->groupBy('abonado_lista_abonado.id')
->with('plazos')
->get();
return view('exports.taquilla_plazos', [
'abonados' => $abonados
]);
}
/**
* @return string
*/
public function title(): string
{
return $this->nombre;
}
}
?>
这是视图文件。
<table>
<thead>
<tr>
<th>Abonado</th>
<th>DNI</th>
<th>Email</th>
<th>Método de pago</th>
<th>Titular de la cuenta</th>
<th>Iban</th>
<th>Plazo 1 - importe</th>
<th>Plazo 1 - estado</th>
<th>Plazo 2 - importe</th>
<th>Plazo 2 - estado</th>
<th>Plazo 3 - importe</th>
<th>Plazo 3 - estado</th>
</tr>
</thead>
<tbody>
@foreach($abonados as $abonado)
<tr>
<td>{{ $abonado->getNombreCompleto() }}</td>
<td>{{ $abonado->dni }}</td>
<td>{{ $abonado->email }}</td>
<td>{{ $abonado->metodoDePagoTostring() }}</td>
<td>{{ $abonado->titular_cuenta }}</td>
<td>{{ $abonado->iban }}</td>
@foreach($abonado->plazos as $plazo)
<td>
{{ App\Libraries\Utils::formatearPrecio($plazo->getImporteTotal()) }}
</td>
<td>
{{ $plazo->pagado ? 'Pagado (' . $plazo->getFechaPago() . ')' : 'Pago pendiente' }}
</td>
@endforeach
</tr>
@endforeach
</tbody>
</table>
我看过文档,拉拉维尔演员表,尝试了很多东西,但我无法理解。 我正在使用 Laravel 6 和 php 7.4。如果可以的话,请帮帮我。
答: 暂无答案
评论