我正在建立一个论坛类型的网站,用户将拥有一个头像.主页面将有一个小版本,而单个页面将有一个大版本的头像.
所以为了带宽,我会有不同的尺寸:
example.png
example_thumb.png
Run Code Online (Sandbox Code Playgroud)
不同尺寸的首选存储和检索方法是什么?
这是我到目前为止所提出的:
User Table UserId | AvatarName | AvatarExt
1 | example | .png
Run Code Online (Sandbox Code Playgroud)
这样我就可以获得具有相同查询的base和thumb版本,只要我知道有一个'_thumb'版本
或者我应该像这样创建一个元表:
UserMeta UserId | Avatar | AvatarType
1 | example.png | original
1 | example_thumb.png | thumbnail
Run Code Online (Sandbox Code Playgroud)
我会喜欢一些建议
你走在正确的轨道上.
用户:
id
username
...
Run Code Online (Sandbox Code Playgroud)
头像
id
user_id
avatar_type(original, thumbnail)
file_name
Run Code Online (Sandbox Code Playgroud)
然后你可以这样做:
select * from avatars where user_id = $user_id and avatar_type='thumbnail'
Run Code Online (Sandbox Code Playgroud)
例如,这允许您允许用户在不修改表的情况下拥有多个头像.