norman-huth/laravel-email-log

1.0.4 2024-05-21 11:08 UTC

This package is auto-updated.

Last update: 2024-09-21 11:46:43 UTC


README

将发送的电子邮件保存在数据库中。
如果在发送邮件时存在已认证的用户,它将保存为 authenticatable(多态关系)。

安装

composer require norman-huth/laravel-email-log

可选:发布

发布配置文件

php artisan vendor:publish --provider="NormanHuth\LaravelEmailLog\Providers\PackageServiceProvider" --tag="email-log-config"

发布迁移

php artisan vendor:publish --provider="NormanHuth\LaravelEmailLog\Providers\PackageServiceProvider" --tag="email-log-migrations"

使用方法

这是一个Laravel Eloquent Model

use NormanHuth\LaravelEmailLog\Models\EmailLog::class;

return EmailLog::all();

return EmailLog::find(1);

return EmailLog::find(1)->authenticatable;

Laravel Nova

有关Laravel Nova集成的说明,请参阅NOVA.md

模型

ErrorLog = {
    'id': Number,
    'subject': String,
    'body': String,
    'from': Array,
    'to': Array,
    'bbc': Array,
    'cc': Array,
    'reply_to': Array,
    'headers': Array,
    'attachments': Array,
    'is_html': Boolean,
    'priority': Number,
    'authenticatable_type': String|Null,
    'authenticatable_id': Number|Null,
    'created_at': String|Null,
    'updated_at': String|Null,
    'deleted_at': String|Null
}

模型关系

可空多态。

/**
* Get the parent authenticatable model.
*/
public function authenticatable(): MorphTo
{
    return $this->morphTo();
}

软删除

迁移中存在软删除列,但模型未使用SoftDeletes Trait