将时间戳添加到 R Shiny flexdashboard header

Add timestamp to R Shiny flexdashboard header

我有一个使用 flexdashboard 的 R Shiny 应用程序,我在工作中每周更新几次。我已安排它在每个工作日自动更新,并且我认为在重新部署时添加时间戳会很好。这就是我 运行 遇到问题的地方...

这是我目前在 .Rmd 文件中的代码:

date: 'Updated: `r format(as.POSIXct(format(Sys.time(), tz = "America/Denver")), "%b %d %I:%M %p")`'

它输出我所期望的,类似于 "Mar 09 4:00 PM"。

但是,由于我使用的是 Sys.time(),我意识到我闪亮的仪表板只输出加载仪表板时的时间戳,而不是实际更新时的时间戳。我在使用类似的功能时发现了同样的问题,例如 lubridate::now().

有什么方法可以在部署时自动将静态时间戳添加到 R Shiny 应用程序或 flexdashboard header?

您可以使用应用数据的修改日期:

format(as.POSIXct(format(file.info('.//data.rdata')$mtime, tz = "America/Denver")), "%b %d %I:%M %p")

或者,作为部署脚本的一部分,您可以创建一个包含适当日期的 .txt 或 .rdata 文件。