我得到了一个包含 Projects 和 Media_files 的数据库。他们处于简单的一对多关系中。
我现在需要将文件夹添加到项目中。Media_files 可以放在 Folders 中,Folders 中可以有 Folders。
我不知道最好的方法是,首先,让文件夹属于其他文件夹,其次,保持 Projects 和 Media_files 之间当前关系的最佳方式,或者是否最好打破这种关系。
项目是一个简单的表:
id,
title,
description,
owner_id.
Run Code Online (Sandbox Code Playgroud)
文件夹是一个全新的表格,但我对它们的基本想法是:
id,
project_id,
parent_folder_id,
title,
description
Run Code Online (Sandbox Code Playgroud)
如果它可以帮助您维持Projects
和之间的当前关系Media_files
,您可以将“文件夹”设为一种Project
。通常的方法是添加 aparent_project_id
来Projects
引用同一个表,例如:
create table projects(project_id serial primary key, ...);
alter table projects add parent_project_id references projects;
Run Code Online (Sandbox Code Playgroud)
然后
Folders
是 allProjects
或 all 都Projects
为非空,parent_project_id
具体取决于哪一个最适合您Projects
映射到所有Projects
带有 null 的映射parent_project_id
归档时间: |
|
查看次数: |
1331 次 |
最近记录: |