场景就是,我把一个文档发送到数据库,那这个文档的标题和链接就显示在了该数据库的主键中。
此时我想设计一个模板列,自动获取这个主键所引用的文档的父文档标题和链接(相当于在数据库列中可点击)。
场景就是,我把一个文档发送到数据库,那这个文档的标题和链接就显示在了该数据库的主键中。
此时我想设计一个模板列,自动获取这个主键所引用的文档的父文档标题和链接(相当于在数据库列中可点击)。
这一版,同主键 ID 样式一样,支持预览
.action{ if index . "custom-avs" }
.action{$id := .id}
.action{$blocks := queryBlocks "select * from blocks where id='?'" $id}
.action{ $b := first $blocks}
.action{$list := splitList $b.ID $b.Path }
.action{$f := first $list }
.action{$len := len $f }
.action{$len := sub $len 1 }
.action{$len := int $len }
.action{ if ne 0 $len }
.action{$f := substr 1 $len $f}
.action{$list := splitList "/" $f }
.action{$ParentID := last $list }
.action{$ParentID := trim $ParentID }
.action{$blocks := queryBlocks "select * from blocks where id='?'" $ParentID}
.action{$b := first $blocks}
<span data-type="block-ref" data-id=".action{$b.ID}" data-subtype="s" class="av__celltext av__celltext--ref" style="">.action{$b.Content}</span>
.action{ end }
.action{ end }
这一版,同主键 ID 样式一样,支持预览
.action{ if index . "custom-avs" }
.action{$id := .id}
.action{$blocks := queryBlocks "select * from blocks where id='?'" $id}
.action{ $b := first $blocks}
.action{$list := splitList $b.ID $b.Path }
.action{$f := first $list }
.action{$len := len $f }
.action{$len := sub $len 1 }
.action{$len := int $len }
.action{ if ne 0 $len }
.action{$f := substr 1 $len $f}
.action{$list := splitList "/" $f }
.action{$ParentID := last $list }
.action{$ParentID := trim $ParentID }
.action{$blocks := queryBlocks "select * from blocks where id='?'" $ParentID}
.action{$b := first $blocks}
<span data-type="block-ref" data-id=".action{$b.ID}" data-subtype="s" class="av__celltext av__celltext--ref" style="">.action{$b.Content}</span>
.action{ end }
.action{ end }
谢谢 J 佬,明白了。
整了半天,搞好了,这回应该行了。
.action{$id := .id}
.action{$blocks := queryBlocks "select * from blocks where id='?'" $id}
.action{ $b := first $blocks}
.action{$list := splitList $b.ID $b.Path }
.action{$f := first $list }
.action{$len := len $f }
.action{$len := sub $len 1 }
.action{$len := int $len }
.action{$f := substr 1 $len $f}
.action{$list := splitList "/" $f }
.action{$ParentID := last $list }
.action{$ParentID := trim $ParentID }
.action{$blocks := queryBlocks "select * from blocks where id='?'" $ParentID}
.action{$b := first $blocks}
<a href="siyuan://blocks/.action{$b.ID}" onclick="event.stopPropagation()">.action{$b.Content}</a>
刚开始用减法减后没有转换整形就老报错,这个好坑,减法本来就是数学运算,竟然计算后还得类型转换。
不行的,文档块没有 ParentID
WiFiDog 是一套开源的无线热点认证管理工具,主要功能包括:位置相关的内容递送;用户认证和授权;集中式网络监控。
Vditor 是一款浏览器端的 Markdown 编辑器,支持所见即所得、即时渲染(类似 Typora)和分屏预览模式。它使用 TypeScript 实现,支持原生 JavaScript、Vue、React 和 Angular。
DevOps(Development 和 Operations 的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。
Markdown 是一种轻量级标记语言,用户可使用纯文本编辑器来排版文档,最终通过 Markdown 引擎将文档转换为所需格式(比如 HTML、PDF 等)。
深度学习(Deep Learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。
确认过眼神后的灵魂连接,站在链在!
资讯是用户因为及时地获得它并利用它而能够在相对短的时间内给自己带来价值的信息,资讯有时效性和地域性。
Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。类似 Velocity、 FreeMarker 等,它也可以轻易的与 Spring 等 Web 框架进行集成作为 Web 应用的模板引擎。与其它模板引擎相比,Thymeleaf 最大的特点是能够直接在浏览器中打开并正确显示模板页面,而不需要启动整个 Web 应用。
七牛云是国内领先的企业级公有云服务商,致力于打造以数据为核心的场景化 PaaS 服务。围绕富媒体场景,七牛先后推出了对象存储,融合 CDN 加速,数据通用处理,内容反垃圾服务,以及直播云服务等。
Postman 是一款简单好用的 HTTP API 调试工具。
flomo 是新一代 「卡片笔记」 ,专注在碎片化时代,促进你的记录,帮你积累更多知识资产。
C 语言是一门通用计算机编程语言,应用广泛。C 语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
JavaScript 一种动态类型、弱类型、基于原型的直译式脚本语言,内置支持类型。它的解释器被称为 JavaScript 引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在 HTML 网页上使用,用来给 HTML 网页增加动态功能。
提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。
Kafka 是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是现代系统中许多功能的基础。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。
FreeMarker 是一款好用且功能强大的 Java 模版引擎。
生活是指人类生存过程中的各项活动的总和,范畴较广,一般指为幸福的意义而存在。生活实际上是对人生的一种诠释。生活包括人类在社会中与自己息息相关的日常活动和心理影射。
Lute 是一款结构化的 Markdown 引擎,支持 Go 和 JavaScript。
Mac 是苹果公司自 1984 年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro 等计算机。
Oracle(甲骨文)公司,全称甲骨文股份有限公司(甲骨文软件系统有限公司),是全球最大的企业级软件公司,总部位于美国加利福尼亚州的红木滩。1989 年正式进入中国市场。2013 年,甲骨文已超越 IBM,成为继 Microsoft 后全球第二大软件公司。
jQuery 是一套跨浏览器的 JavaScript 库,强化 HTML 与 JavaScript 之间的操作。由 John Resig 在 2006 年 1 月的 BarCamp NYC 上释出第一个版本。全球约有 28% 的网站使用 jQuery,是非常受欢迎的 JavaScript 库。
DNSPod 建立于 2006 年 3 月份,是一款免费智能 DNS 产品。 DNSPod 可以为同时有电信、网通、教育网服务器的网站提供智能的解析,让电信用户访问电信的服务器,网通的用户访问网通的服务器,教育网的用户访问教育网的服务器,达到互联互通的效果。
RabbitMQ 是一个开源的 AMQP 实现,服务器端用 Erlang 语言编写,支持多种语言客户端,如:Python、Ruby、.NET、Java、C、PHP、ActionScript 等。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。
frp 是一个可用于内网穿透的高性能的反向代理应用,支持 TCP、UDP、 HTTP 和 HTTPS 协议。