照片库 - 数据库设计

use*_*378 6 mysql database database-design

这是我在照片库上的数据库设计,我喜欢反馈或者它可以改进什么?

photos_category
- photocat_id (P)
- name
- slug
(5, 'Cars', 'cars')



photos_albums
- album_id (P)
- photocat_id (F)
- name
- description
- active
(20,5,'BMW','Nice BMW cars',1)

photos
- photos_id (P)
- album_id (F)
- image
(33,20,'bmw_car4.jpg')
Run Code Online (Sandbox Code Playgroud)

bmw_car4.jpg是原始尺寸,它位于:/ gallery/original/bmw_car4.jpg

对于前端(调整大小):

缩略图:/gallery/thumbs/bmw_car4.jpg

图片:/gallery/images/bmw_car4.jpg

Pas*_*TIN 7

你的设计对我来说似乎很正确:

  • 它很简单,功能齐全,
  • 没有重复的信息,
  • 你可以从一个物体中找到它的相关信息


我只是,如果你计划有很多照片,添加一些子目录方案,以避免在一个目录(/gallery/original/和调整大小的图像的目录)中有太多文件.

您可以根据图像的上传日期(月份或日期,取决于图像数量)或类似内容添加一些散列机制.
例如,您可以:

  • /gallery/original/2011/01/ :1月上传的所有图片
  • /gallery/original/2011/02/ :2月份上传的所有图片
  • 等等

然后,您将在photos表中存储路径,而不仅仅是文件的名称.