数据库存用户头像只存文件名和存完整 URL 哪个好?

2024-05-12 23:23:43 +08:00
 fgt1t5y

哪种好?

9443 次点击
所在节点    MySQL
59 条回复
xupefei
2024-05-12 23:25:01 +08:00
1
lianyue
2024-05-12 23:29:02 +08:00
尽少我选择
xxx
imdong
2024-05-12 23:30:33 +08:00
文件名以用户相关唯一信息储存,数据库就不用存了,缺点是不会有记录。
akira
2024-05-12 23:49:20 +08:00
都行,反正不要存文件就行
fushall
2024-05-13 00:00:47 +08:00
1 挺好的, 在代码里拼接路径可以灵活一些。
万一哪天路径要改成 assets/xx/xxx.jpg, assets/yy/yyx.jpg 呢?(这种情况,比如 assets/xx/ 放在了 A 硬盘,assets/yy/ 放在了 B 硬盘
aru
2024-05-13 00:05:58 +08:00
2
因为 1 扩展起来挺麻烦的,如果确认只有几万个头像那倒是无所谓
Casbin
2024-05-13 00:47:53 +08:00
@fgt1t5y 存完整 URL ,不差这点存储空间。只存相对路径,一旦需要支持多 URL 基地址(多个 OSS )就 gg 了,具体可以参考 Casdoor: https://github.com/casdoor/casdoor
hallDrawnel
2024-05-13 02:55:31 +08:00
存完整的 URL 。1 限制了前缀只能有一个。
dcsuibian
2024-05-13 03:32:49 +08:00
看标题我还以为你说的完整 url 是 https://example.com/assets/xxx.jpg 这样呢
busier
2024-05-13 06:45:12 +08:00
这问题很蛋疼,即使你选了 1 ,以后想改 2 ,只要在 2 变更 path 前,sql 一下批量更新一下就行了。又或者在增加一个字段存放 path 都可以。犯得着这么纠结么,还是不自信?
facebook47
2024-05-13 07:51:42 +08:00
你这其实都是相对路径,感觉没太大区别🐶,用 2 可能维护容易点,一看就知道在哪里了
ShinichiYao
2024-05-13 08:10:41 +08:00
直接 base64 存数据库,最讨厌大量零碎的小文件
Lexgni
2024-05-13 08:29:35 +08:00
这俩没区别吧,2 如果有变动也就是再加一层文件夹的事,既然没区别那就选占用少的
Dragonphy
2024-05-13 08:50:56 +08:00
为啥不用 OSS 存储图片
RedBeanIce
2024-05-13 08:53:31 +08:00
存文件 id 。
yinft
2024-05-13 08:53:57 +08:00
基本成熟点的系统都会直接存 oss 的绝对地址吧
macaodoll
2024-05-13 08:58:04 +08:00
只要不把二进制直接存进去就都 OK
wusheng0
2024-05-13 09:03:52 +08:00
1 吧,路径写在配置文件里面
Felldeadbird
2024-05-13 09:15:11 +08:00
我选第二种,因为我懒。我不想代码在组装一次。
ladypxy
2024-05-13 09:20:26 +08:00
第一种,只需要保存文件名,文件 URL 可以通过代码拼接
将来如果要移动到其他目录,代码里修改一下拼接就好了。

如果用第二种,将来修改路径会很麻烦

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1040087

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX