Closed
Description
在什么情况下你需要该特性?In what scenarios do you need this feature?
当右键复制该块为嵌入块并复制到其他地方时,并不能知道这个块被块引用了,造成双链信息的缺失
描述可能的最优解决方案 Describe the optimal solution
PS:这里并不是要求把所有的SQL语句搜索出来的块嵌入结果都进行反链索引,技术上和效率上也不现实,而是把右键复制的单块嵌入块进行反链提示
如,仅统计这种带ID的块引用(由右键复制块引用链接生成的)
select * from blocks where id='20221028112621-tpxd299'
而忽略这种全文检索可能产生很多SQL引用的:
SELECT * FROM blocks WHERE content LIKE '文献调研'
其他信息 Other information
虽然技术上块嵌入和SQL查询,都是基于SQL块实现的,还是希望能区分一下两个在使用上的细微区别
块嵌入的使用场景,个人使用习惯是一种展示全部信息的引用块。有需要统计到底这个块被什么地方引用了的需求(引用一大段,引用块只能显示开头的几行字,后面的信息全部被隐去了,这时用块嵌入能完美解决显示的需求,但是缺失了双链统计)
SQL查询是全文检索出来一个结果,这个结果往往是用于一个索引目录使用,为单向链接,并没有必要进行双链的溯源需求,所以不进行统计是合理的。
Activity
GH-W94 commentedon Nov 1, 2022
支持块嵌入增加引用统计的功能,太需要这个功能了。
实现方式如同楼主所说那样。或者换个思路:
嵌入块的样式还是使用现在嵌入块的样式,但嵌入的技术由现在的“sql 查询”改成由“双链引用”来实现,并且在嵌入块中使用的双链满足:① 不限制动态锚文本长度(即引用内容多长,就动态显示多长),② 在引用处不显示悬浮窗,而在被引用处,鼠标移到右端数字小标时显示引用的地方。③嵌入处的内容不能被轻易修改。
HowcanoeWang commentedon Nov 1, 2022
不知道为什么有这个需求,我反而希望能直接在嵌入处进行修改而不是在弹出的悬浮窗里面修改
88250 commentedon Nov 1, 2022
目前的查询嵌入块逻辑不改变了,以后可能会考虑真正的嵌入块实现,感谢提议。
GH-W94 commentedon Nov 1, 2022
我认为的嵌入块是将一个内容从源地点复刻到另外的一些地方,而且要一直与源地方的内容保持一致,
即源地方的内容相当于母版,而其他地方嵌入的内容是克隆版,修改的权限应该只能在母版上修改,克隆体上不能像现在双链哪样轻易直接修改,最起码也要像现在的嵌入快修改时需要在弹出的源地点的母版内容上修改。
而且当源地方有类似反链一样的提示后,在修改时就能看到有哪些地方嵌入了,最大程度地保证了其他地方嵌入的内容与源地方的内容的一致性。
Zuoqiu-Yingyi commentedon Nov 1, 2022
@88250 要不要这个也加入 backlog, 也方便大家讨论
88250 commentedon Nov 1, 2022
不加了吧,需求基本清晰,后续有空再考虑实现。
HowcanoeWang commentedon Nov 2, 2022
期待实现,目前思源的双链,并不是块引用和块嵌入都可以双向链接,只有1.5向链接