小项目一般用富文本编辑器把内容存入数据库不是带有着 html 标签的嘛!
需求是提取出来的内容不带 html 标签的!
请问大家会选择如下哪个操作:
1 、建立 2 个字段,一个存带 html 标签的内容,一个存不带 html 的内容
2 、取出数据然后替换掉 html 标签
需求是提取出来的内容不带 html 标签的!
请问大家会选择如下哪个操作:
1 、建立 2 个字段,一个存带 html 标签的内容,一个存不带 html 的内容
2 、取出数据然后替换掉 html 标签
|
1
这时候 php 的好处就出来了 直接一个 strip_tags 函数搞定。
|
|
J55s5Aug 1, 2022
2
我肯定是选 2 ,这个就是一个业务上的需求吧。今儿不要标签,明儿要标签,后天想把标签加粗展示,大后天想把标签变为红色,总不能一次整多一个字段吧
|
|
eason1874Aug 1, 2022
3
大部分富文本编辑器都有两个保存 API ,一个存 HTML 格式的,一个存文本格式的,并且两者可以互转
文本格式也只是类似 markdown 去掉部分 HTML 标签,不能全部去掉。比如允许编辑字体颜色,保存时如果把 HTML 标签全部去了,那你就转不回来了 |
|
itechifyAug 1, 2022 via Android
4
2 ,jsoup 解析整一下
|
|
5
这要从何笑起呢
|
|
kkeepAug 1, 2022 via Android
7
2
|
|
9
@oneisall8955 是的
|
|
DanswermeAug 1, 2022
12
选 1 ,我懒
|
|
netnrAug 2, 2022 via Android
16
选 1 直接存储 更通用
|
|
imicksoftAug 2, 2022
18
选 1 ,这事我干过。
我之前采集过 aardio 论坛的帖子,aardio 的数据类型有一个是 table 类型,那存 html 不方便搜索 aardio 代码,所以就用了两个字段,一个存 html 源码,一个存纯文本。 |
|
yuewenjieAug 2, 2022
19
嘿嘿
|
|
hay0577Aug 2, 2022
24
额 哪里好笑了?
|
|
JaminTAug 2, 2022
25
我是来看笑话的,笑话呢
|
|
p8YFk4f3E8SJ3aEvAug 2, 2022
26
选 2 丢给前端去替换?
|
|
nothingistrueAug 2, 2022
27
首先考虑的问题是,不带 html 的内容是不是必须存,评判标准是:有没有根据它检索的需求。如果是必须存那就没 2 的什么事了。如果不是必须存,那 1 跟 2 在黑盒功能上是没区别的,用哪个就看你用哪个更方便。
|
|
ada87Aug 2, 2022
28
哪里好笑了, 正常一点的富文本都是存自己的 rawObject ,从没存过 HTML , 这个需求要是要求存 HTML 才有毛病。
|
|
theliangAug 2, 2022
29
2
第一个是用空间换时间 第二个是直接花时间去替换,如果不是很大的文本,其实效率也是挺快的 |
|
littlewingAug 2, 2022
30
1. 哪里好笑了
2. “小项目一般用富文本编辑器把内容存入数据库不是带有着 html 标签的嘛!” 这是什么逻辑 |
|
RuralHunterAug 2, 2022
31
显然 2 个方案都不对,实际只要保存带标签的 html 。因为不需要标签时你可以把带标签内容取出来去掉标签。但你去掉了标签保存就恢复不了原来的标签了,除非你的标签是固定的。
|
|
33
反正我没笑
|
|
laolaowangAug 2, 2022
34
这有什么可笑的?
|
|
fox0001Aug 2, 2022 via Android
35
一般选 1 ,省心
|
|
RrrrrrAug 2, 2022
36
自己定义一套不更好?
|
|
alfaAug 2, 2022
37
小项目,之前我们用了 1 ,因为内容需要按关键字搜索
|
|
ccyu220Aug 2, 2022
38
有什么好笑的,之前做 APP 消息中心的时候就是这么处理的显示部分简介和详情的。
简介就是纯文本,详情就是 webview 展示详细内容 |
|
mosliuAug 2, 2022
39
看数据量 和 时间要求了。。
第一个 空间换时间 第二个 时间换空间呗。。。 |
|
DeutschXPAug 2, 2022 via iPhone
40
|
|
lujiaosamaAug 2, 2022
41
为什么会存带 html 标签的, 我这里的富文本是存的楼上说的 rawObject, 也有过前端展示简介纯文本的需求, 是服务端这边提取的文本. 如果还要搜索, 确实还是 ls 说的再加一个字段存纯文本比较好.
|
|
libookAug 2, 2022
42
得看需求上,要求带样式的内容在“不带 html 标签”的场景下怎么处理,如果只去掉 html 标签就能满足需求的话,我倾向方案 2 。
方案 1 需要确保一致性,解决一致性问题通常会麻烦一些,我个人的偏好是能存一份数据尽量不存多份。 |
|
krixaarAug 3, 2022
43
方案 1 的变种,建一个视图,多一个字段用原表字段去掉 html 标签
|
|
encroAug 3, 2022
44
orm 里面这种不是有接近标准的解决方案吗?
Post { html, # 数据库存原始的 getContent(), # 定义一个 get 取去掉 tag 的 } 以上是不考虑性能的,如果需要考虑性能,一直性用 text ,比如搜索引擎,那么当然是加字段。根据场景和需求来,否则就是耍流氓。 |
|
sanyuedevAug 3, 2022
45
内部使用的(管理系统)存取原始信息,对外展示的 转义为 html 形式的
|