public function beforeDeleteRemoveFilealbe() { //删除链接对应的库中的数据 $fileable_object = $this->getFileable(); if ($fileable_object) { $fileable_object->delete(); } //删除链接表中的数据 $fileable = Fileable::query()->where('file_id = :id:', ['id' => $this->id])->execute(); if ($fileable) { $fileable->delete(); } return $this; }
public static function getStatistics() { $result = []; $data = Fileable::query()->groupBy('fileable_type')->columns(['count(file_id) AS count', 'fileable_type AS type'])->execute(); foreach ($data as $row) { $className = $row->type; $result[] = ['name' => $className::getDatabaseName(), 'count' => $row->count, 'type' => myParser::getModelType($className)]; } return $result; }