设置或更新配置项
(
db: Session,
key: str,
value: str,
description: Optional[str] = None,
category: str = 'general'
)
| 413 | |
| 414 | |
| 415 | def set_setting( |
| 416 | db: Session, |
| 417 | key: str, |
| 418 | value: str, |
| 419 | description: Optional[str] = None, |
| 420 | category: str = 'general' |
| 421 | ) -> Setting: |
| 422 | """设置或更新配置项""" |
| 423 | db_setting = get_setting(db, key) |
| 424 | if db_setting: |
| 425 | db_setting.value = value |
| 426 | db_setting.description = description or db_setting.description |
| 427 | db_setting.category = category |
| 428 | db_setting.updated_at = utcnow_naive() |
| 429 | else: |
| 430 | db_setting = Setting( |
| 431 | key=key, |
| 432 | value=value, |
| 433 | description=description, |
| 434 | category=category |
| 435 | ) |
| 436 | db.add(db_setting) |
| 437 | |
| 438 | db.commit() |
| 439 | db.refresh(db_setting) |
| 440 | return db_setting |
| 441 | |
| 442 | |
| 443 | def delete_setting(db: Session, key: str) -> bool: |
no test coverage detected