【发布时间】:2013-01-20 05:31:38
【问题描述】:
我最近开始开发一个相当大的网站。 在网站上,我想允许用户上传他们的样本作品。 我们目前非常有限,因此图像将存储在我们的服务器上。
我有点坚持逻辑。 所以我的逻辑是这样的。
用户创建一个文件夹,其名称存储在数据库中,并附有users id
文件夹表
行
id | folder | user_id
1 | Some folder | 1
2 | New folder | 4
3 | Nother folder | 7
图片表格
行
id | image_name | folder_id |
1 | image1.jpg | 1
2 | image2.jpg | 1
3 | image3.jpg | 1
4 | image4.jpg | 2
5 | image5.jpg | 2
6 | image6.jpg | 2
关系
class Folder extends Eloquent
{
public function images()
{
return static::has_many('Images');
}
}
class Image extends Eloquent
{
public function folder()
{
return static::belongs_to('Folder');
}
}
服务器上的文件夹结构
- samples
-user_id
- folder_id
- image1
- image2
- image3
如您所见,用户创建了一个文件夹,创建文件夹后,user 将图像名称上传到带有folders id 的数据库中,并显示图像将是上面描述的方式与现实.
所以我的问题。
- 您认为这是一个好的逻辑吗
- 这会导致将来出现问题
- 你想为这个功能提供什么
而我最神圣的是两件事。
我认为这会导致一个巨大的数据库,其次是id's,在x 时间之后会有更多用户,id's 会增加,我知道这听起来很奇怪,但是因为很多用户上传图片会导致id很大,我的意思是可能会达到数百万,有没有办法解决这个问题?
感谢您的帮助
【问题讨论】:
-
我有相同的表,但我希望任何登录用户都可以查看其他用户的所有图像,但只能更新(编辑)和删除他/她自己的。如果有人有,请指导我解决方案。我被困在这里了。
标签: php image image-processing laravel