2017-01-31 224 views
4

我目前正在构建一个允许用户登录和协作项目的应用程序。我已经使用了laratrust,以便我可以集成角色和权限。我希望能够做的是允许用户创建一个文件夹结构,但他们希望。因为每个用户都可以拥有自己的文件夹结构,所以我将如何存储这些内容存储文件夹hierachy laravel

+0

您可以添加一点上下文吗?这个文件夹是什么?它是否在浏览器中以UI排序的形式出现? – GiamPy

+0

说例如你登录到谷歌驱动器。你有能力制作一个文件夹。并进入并创建更多的文件夹等用户连接到一个项目。如果用户是管理员,他们可以在项目中创建文件夹,以便它可以包含以下任何内容:绘图,工程师等... @GiamPy –

+0

**所有**文件夹对于每个用户都是唯一的,还是共享的文件夹? – GiamPy

回答

2

我会给我2美分。

我在与一些数据的例子以下几列组成的数据库中创建一个新表:

id | project_id | parent_id | name 1 | 1 | null | Main Folder 2 | 1 | 1 | Child Folder 3 | 1 | 2 | Child of Child Folder 4 | 2 | null | Main Folder Hehe 5 | 2 | 4 | Child Folder Hehe

这样你要建立一个基于节点的树,你可以通过使用这样的结构来容易地构建树。

请注意,如果parent_id为空,则表示它没有父项,或换句话说,它是项目的基础文件夹之一。

如果您想在整个项目/用户间共享排序,您还可以在表中添加排序列!

您现在可以将文件关联到每个文件夹,而没有任何问题。

+0

非常感谢! @GiamPy! –

+0

不客气! @tomBannister! – GiamPy

相关问题