我希望在 schema.org 的 ruby on rails 中以 iso8601 格式输出持续时间。我已经知道如何在 iso8601 中输出时间戳。例如 video.created_at.iso8601
我现在要做的是输出以下格式的内容:
<meta itemprop="duration" content="PT1M33S" />
这就是 iso8601 持续时间格式。您可以在http://en.wikipedia.org/wiki/ISO_8601#Durations阅读有关规范的信息
目前我正在使用 strftime 进行黑客攻击,但这并不理想......
Time.at(@video.duration).strftime('PT%MM:%SS')
希望有一个更经典的解决方案。一个足够聪明,可以在需要时处理几个小时等。我依赖 ActiveSupport 等没有问题,因为它将在 Rails 3.2 应用程序中。谢谢!