Skip to content

Model

$hidden 只会影响 toArray() 或 toJson() 生成的数据 解决方案:改用 $user->toArray() 或 return response()->json($user); $visible 的优先级高于 $hidden

php
# userModel
class UserModel{
  public function group(){
    return $this->hasOne('App\Models\AdminGroupModel', 'id', 'group_id')
        ->select('id','text as group_name','pay_password' - ### group的attribute依赖 #### );
  }
}
                 
#groupModel
class Group{
  public function getIsSetPayPasswordAttribute(){
    return empty($this->attributes['pay_password']) ? 0 : 1;
  }
}

protected $casts = [ 'created_at' => 'datetime:Y-m-d H:i:s', 'updated_at' => 'datetime:Y-m-d H:i:s', ];

记录数组ids

protected function userIds(): Attribute
{
    return new Attribute(
        get: fn($value) => $value ? array_filter(explode(',', $value)) : [],
        set: fn($value) => implode(',', $value),
    );
}

数据库 表userIds: 100,200,300

class Payroll extends Model
{
    use Filterable, DateTimeFormatable, Logable, Flowable, Searchable, CbsPaymentTrait;
}


# 调用Payroll::filter($request->all())

filter是Filter + able的方法

Lucking