wendelladriel/laravel-model-completed

Laravel 辅助库,用于了解 Eloquent 模型的完成状态

v1.0.1 2022-12-27 12:35 UTC

This package is auto-updated.

Last update: 2024-08-27 16:14:32 UTC


README

Laravel 辅助库,用于了解 Eloquent 模型的完成状态

安装

composer require wendelladriel/laravel-model-completed

用法

此包提供了一个特质:`\WendellAdriel\ModelCompleted\HasCompletionStatus`,您可以在您的 Eloquent 模型 中使用。

您还需要提供一个 protected array $required 属性,其中包含要考虑模型完成所需的属性列表。

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Laravel\Sanctum\HasApiTokens;
use WendellAdriel\ModelCompleted\HasCompletionStatus;

class User extends Authenticatable
{
    use HasApiTokens, HasFactory, Notifiable, HasCompletionStatus;

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

    protected array $required = [
        'name',
        'email',
        'password'
    ];
}

属性

此特质为 模型 添加了六个属性

required_fields

模型要被视为完整所需的字段列表(`$required` 属性或如果未设置 `$required` 属性则为 空数组)。

total_fields

要使模型被视为完整所需的字段数量。

filled_fields

已填写的所需字段数量。

empty_fields

空白的所需字段数量。

completion_percentage

模型的完成百分比。

is_complete

如果所有必需字段都已填写,则 模型 被视为完整。

方法

您可以使用以下方法在需要时将其附加到 模型

withCompletionStatus

required_fieldsis_complete 属性附加到 模型 上。

withCompletionCounts

required_fieldstotal_fieldsfilled_fieldsempty_fieldscompletion_percentage 属性附加到 模型 上。

withCompletionInfo

required_fieldstotal_fieldsfilled_fieldsempty_fieldscompletion_percentageis_complete 属性附加到 模型 上。

鸣谢

贡献

所有 PR 都受欢迎。

对于重大更改,请先创建一个问题,描述您要添加/更改的内容。