combindma/mailcoach-skeleton

一个有用的包,可以在您的mailcoach项目中实现用户管理

1.2.6 2024-07-10 14:16 UTC

This package is auto-updated.

Last update: 2024-09-10 14:42:35 UTC


README

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

关于Combind Agency

Combine Agency 是一家领先的网站开发公司,专注于使用现代技术构建创新和高性能的网站应用程序。我们经验丰富的开发人员、设计师和项目经理团队致力于为客户提供量身定制的优质服务。

如果您需要帮助您的下一个项目或想讨论定制解决方案,请随时联系我们或访问我们的网站以获取有关我们服务的更多信息。让我们共同创造一些惊人的事物!

安装

您可以通过composer安装此包

composer require combindma/mailcoach-skeleton

更新用户模型为以下内容

namespace App\Models;

use Illuminate\Database\Eloquent\Relations\MorphMany;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Laravel\Sanctum\HasApiTokens;
use Laravel\Sanctum\PersonalAccessToken;
use Spatie\Mailcoach\Domain\Settings\Models\MailcoachUser;
use Spatie\Mailcoach\Domain\Shared\Traits\UsesMailcoachModels;
use Spatie\WelcomeNotification\ReceivesWelcomeNotification;


class User extends Authenticatable implements MailcoachUser
{
    use HasApiTokens;
    use Notifiable;
    use ReceivesWelcomeNotification;
    use UsesMailcoachModels;

    protected $fillable = [
        'name',
        'email',
        'password',
    ];

    protected $hidden = [
        'password',
        'remember_token',
    ];

    protected function casts(): array
    {
        return [
            'email_verified_at' => 'datetime',
            'password' => 'hashed',
        ];
    }

    public function personalAccessTokens(): MorphMany
    {
        return $this->morphMany(PersonalAccessToken::class, 'tokenable');
    }

    public function canViewMailcoach(): bool
    {
        return true;
    }
}

将以下内容添加到您的文件app/providers/AppServiceProvider.php中

use Illuminate\Auth\Events\Registered;
use Illuminate\Auth\Listeners\SendEmailVerificationNotification;
use Combindma\MailcoachSkeleton\Listeners\SetupMailcoach;
use Spatie\Mailcoach\Domain\Shared\Events\ServingMailcoach;

public function boot(): void
{
        Event::listen(
            Registered::class,
            SendEmailVerificationNotification::class,
        );
        Event::listen(
            ServingMailcoach::class,
            SetupMailcoach::class,
        );
}

您必须注册所需的路由。在您的web文件中添加以下内容

MailcoachSkeleton::routes('app');

您可以使用以下命令发布并运行Laravel默认迁移('create_users_table', 'create_sessions_table', 'create_password_resets_table', 'create_jobs_table', 'create_failed_jobs_table')

php artisan vendor:publish --tag="mailcoach-skeleton-migrations"
php artisan migrate

可选地,您可以使用以下命令发布视图

php artisan vendor:publish --tag="mailcoach-skeleton-views"

创建第一个用户

之后,您可以通过执行php artisan mailcoach:make-user来创建一个初始用户。您可以使用创建的用户在Mailcoach中登录。您可以在mailcoach的用户屏幕中创建新用户。

注册自定义操作:等待日期

您可以通过将类名添加到mailcoach.automation.flows.actions配置键来注册我们的自定义操作。

[
    'actions' => AutomationAction::defaultActions()->merge([
               \Combindma\MailcoachSkeleton\Actions\WaitForDateAction::class,
    ])->toArray(),
]

致谢

许可证

MIT许可证(MIT)。请参阅许可证文件以获取更多信息。