asb/status

此包用于在Laravel中为模型分配状态。

1.0.0 2024-09-21 13:41 UTC

This package is auto-updated.

Last update: 2024-09-21 13:46:21 UTC


README

此包用于在Laravel模型中分配状态
表之间的关系类型是多对多,
但根据你对命令的使用偏好,
它可以用作一对多形态关系。

为什么我们需要这个包的主要问题

不再需要定义关系,只需在要应用状态的模式中添加必要的Trait HasStatus 即可。

快速开始

  1. 安装

    composer require asb/status
    
  2. 运行迁移

    php artisan migrate
    
  3. 将必要的Trait添加到您的模型中

    // 模型需要此特质。
    use HasStatus;
    
  4. 用法

    • 获取所有具有此状态的模式。
    getModelsHave(string $status)
    
    • 获取模式的所有状态。
    getStatuses(Model $model)
    
    • 检查模式是否有此状态。
    hasStatuses(Model $model,string $status)
    
    • 它为模式分配状态。
    assignStatus(Model $model,string $status)
    
    • 它向模式添加状态。
    addStatus(Model $model,string $status)
    
    • 它更新模式的状态并替换为新状态或现有状态。
    updateStatus(Model $model,string $status,string $newStatus)
    
    • 它从模式中删除状态。
    removeStatus(Model $model,string $status)
    
    • 它从模式中删除所有状态。
    removeAllStatus(Model $model)
    
  5. 使用状态模型

    • 它创建状态。
      createStatusModel(string $status)
      
    • 它获取所有状态。
      getAllStatusModel(bool $onlyTrashed=false)
      
    • 它通过标题获取状态。
      getStatusModel(string $status)
      
    • 它通过标题更新状态并替换为新标题。
      updateStatusModel(string $status, string $update_status):
      
    • 它通过标题删除状态并从所有模型中删除该状态。
      removeStatusModel(string $status)