ruby – Jekyll中液体模板的算术计算,用于计算估计的读数时间

ruby – Jekyll中液体模板的算术计算,用于计算估计的读数时间,第1张

概述我在1周前开始使用Jekyll而不熟悉 Ruby,我想实现以下功能. 从Jekyll documentation我可以使用以下模板来计算文章中的单词: {{ page.content | number_of_words }} 我想使用这些信息来计算文章的估计阅读时间(以分钟为单位),基于平均每分钟200字的假设.其中给出了以下简单公式: number_of_words / 200 不确定,但基于我 我在1周前开始使用Jekyll而不熟悉 Ruby,我想实现以下功能.

从Jekyll documentation我可以使用以下模板来计算文章中的单词:

{{ page.content | number_of_words }}

我想使用这些信息来计算文章的估计阅读时间(以分钟为单位),基于平均每分钟200字的假设.其中给出了以下简单公式:

number_of_words / 200

不确定,但基于我读过的关于Ruby的内容,我应该使用{%%}来执行我的计算,但我不确定是否可以使用{{page.content | number_of_words}}在其中,执行除法.

这是我目前的情况:

.HTML文件:

..<p >    {% print {{number_of_words}} / 200 %}</p>..

我确信上面使用的number_of_words不存在,我不确定print是否会在那里做到.有任何想法吗?

解决方法 虽然Jekyll是用Ruby编写的,但在使用它时通常不需要编写任何Ruby.它使用 Liquid,它被明确设计为允许用户创建页面设计而不允许它们运行任意代码.

liquID确实有tags(Jekyll添加some more),它使用{%%},但在这种情况下,我认为你可能会对使用< %%>的Erb模板语言感到困惑.执行Ruby代码.

如果需要,您可以创建自己的自定义liquID标签和过滤器,divIDe_by过滤器似乎可以执行您想要的 *** 作:

{{ page.content | number_of_words | divIDed_by: 200 }}

请注意,这是整数除法,与您的示例相同,因此如果字数小于200,则结果将为零.要检查这一点,只有在总数> 1时才包括它. 0,您可以使用assign标签(可以与过滤器一起使用),如果是这样的标签:

{% assign read_time = page.content | number_of_words | divIDed_by: 200 %}{% if read_time > 0 %}Read time: {{ read_time }}{% endif %}
总结

以上是内存溢出为你收集整理的ruby – Jekyll中液体模板的算术计算,用于计算估计的读数时间全部内容,希望文章能够帮你解决ruby – Jekyll中液体模板的算术计算,用于计算估计的读数时间所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1287255.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存