Refactor import statements for ResponseBase in API routers
- Updated import statements in the following files to import ResponseBase directly from models instead of models.response: - routers/api/v1/share/__init__.py - routers/api/v1/site/__init__.py - routers/api/v1/slave/__init__.py - routers/api/v1/tag/__init__.py - routers/api/v1/user/__init__.py - routers/api/v1/vas/__init__.py - routers/api/v1/webdav/__init__.py Enhance user registration and related endpoints in user router - Changed return type annotations from models.response.ResponseBase to models.ResponseBase in multiple functions. - Updated return statements to reflect the new import structure. - Improved documentation for clarity. Add PhysicalFile model and storage service implementation - Introduced PhysicalFile model to represent actual files on disk with reference counting logic. - Created storage service module with local storage implementation, including file operations and error handling. - Defined exceptions for storage operations to improve error handling. - Implemented naming rule parser for generating file and directory names based on templates. Update dependency management in uv.lock - Added aiofiles version 25.1.0 to the project dependencies.
This commit is contained in:
@@ -283,6 +283,7 @@ async def init_default_user() -> None:
|
||||
async def init_default_policy() -> None:
|
||||
from .policy import Policy, PolicyType
|
||||
from .database import get_session
|
||||
from service.storage import LocalStorageService
|
||||
|
||||
log.info('初始化默认存储策略...')
|
||||
|
||||
@@ -302,6 +303,10 @@ async def init_default_policy() -> None:
|
||||
file_name_rule="{randomkey16}_{originname}",
|
||||
)
|
||||
|
||||
await local_policy.save(session)
|
||||
local_policy = await local_policy.save(session)
|
||||
|
||||
# 创建物理存储目录
|
||||
storage_service = LocalStorageService(local_policy)
|
||||
await storage_service.ensure_base_directory()
|
||||
|
||||
log.info('已创建默认本地存储策略,存储目录:./data')
|
||||
Reference in New Issue
Block a user