【问题标题】:how to make laravel export excel without model如何使没有模型的laravel导出excel
【发布时间】:2021-12-31 07:26:40
【问题描述】:

我已经阅读了 laravel-export excel。但我的项目不同,我的项目没有模型。如何在没有制作模型的情况下在laravel中制作导出excel? laravel8 和 maatwebsite3

<?php

namespace App\Exports;

use Maatwebsite\Excel\Concerns\FromCollection;

class ExportExcel implements FromCollection
{
    /**
    * @return \Illuminate\Support\Collection
    */
    public function collection()
    {
        //
    }
}

我应该在导出控制器、exportexcel 和下载按钮中输入什么

【问题讨论】:

    标签: excel ajax laravel model export


    【解决方案1】:

    您始终可以使用 DB 外观导入。

    public function collection(Collection $rows)
    {
        foreach ($rows as $row) 
        {
            DB::table('users')->insert([
                'email' => $row[0],
            ]);
        }
    }
    

    或者,您总是会创建空壳模型来进行插入。如果我必须清理wordpress 数据并希望Laravel 外观易于使用,我经常这样做。

    use Illuminate\Database\Eloquent\Model;
    
    class User extends Model {
        protected $fillable = ['name'];
    }
    

    这将使documentation 中的以下内容起作用。

    public function model(array $row)
    {
        return new User([
            'name' => $row[0],
        ]);
    }
    

    【讨论】:

    • $rows 是什么意思?
    • rows 来自 excel 包提供的方法定义,这将代表 csv 中的所有行
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-04-17
    • 2019-06-12
    • 1970-01-01
    • 1970-01-01
    • 2020-07-09
    • 2020-10-11
    • 2021-09-15
    相关资源
    最近更新 更多