mirror of
https://github.com/kuaifan/dootask.git
synced 2026-07-31 18:35:56 +00:00
55 lines
2.0 KiB
Markdown
55 lines
2.0 KiB
Markdown
---
|
||
id: project.column.howto.remove
|
||
title: 删除项目列(级联删除任务)
|
||
type: howto
|
||
feature: project
|
||
scope: end-user
|
||
locale: zh
|
||
aliases:
|
||
- 删除列
|
||
- 删一列
|
||
- 删看板列
|
||
- 列里任务怎么办
|
||
- 删除列任务会丢吗
|
||
related_tools: [get_project]
|
||
related_pages: [project_kanban, project_settings]
|
||
prerequisites:
|
||
- 有 TASK_LIST_REMOVE 权限
|
||
negative:
|
||
- 删列**会级联软删该列下所有任务**(含子任务)
|
||
- 删列前不会自动迁移任务到其他列,需手动 [[task.move.howto.column]]
|
||
- 删除后任务可在回收站恢复,列本身也可恢复
|
||
last_verified: v1.7.90
|
||
---
|
||
|
||
# 删除项目列(级联删除任务)
|
||
|
||
## 重要提醒
|
||
**删列会同时软删该列下所有任务。** 这是 DooTask 的设计行为(不是 BUG),原因:列是任务的物理归属,孤儿任务没有合理去处。
|
||
|
||
## 入口
|
||
- 桌面端:看板视图列头右键 → 「删除列」
|
||
- 桌面端:项目设置 → 「列管理」 → 单列「删除」
|
||
|
||
## 操作步骤
|
||
1. 确认弹窗会显示「将一并删除 X 个任务」
|
||
2. 二次确认
|
||
3. 服务端:
|
||
- 软删 ProjectColumn(deleted_at)
|
||
- 级联软删所有 column_id 命中此列的 ProjectTask
|
||
- 级联软删所有这些任务的子任务、附件、聊天室
|
||
4. ProjectLog 记一条「X 删了列 Y 和 N 个任务」
|
||
|
||
## 避免误删的建议
|
||
- **删列前先迁任务**:拖任务到别的列([[task.move.howto.column]])或归档([[task.archive.howto]])
|
||
- 想把列彻底废弃但保留任务记录:建一个「已归档」列,把任务全拖过去
|
||
|
||
## 恢复
|
||
- 回收站找到项目 → 「恢复任务」可单独恢复任务,但 column_id 仍指向已删的列
|
||
- 整列恢复:管理后台数据恢复,会一并恢复列 + 任务
|
||
|
||
## 不支持
|
||
- 不能"软删列保留任务"(只有迁任务 + 删列两步法)
|
||
- 列内任务过多时(>100)没有分批删除:服务端依然会一次性级联软删,操作可能慢几秒
|
||
- 删列后绑定的工作流节点不会自动解绑 columnid,需手动改
|