0

我有一个用户使用应用程序上的按钮执行的操作。我想在页面上显示一条消息,说明上次执行该操作的时间(由任何用户)。我需要将日期保存在某个地方,但不想要一整张桌子,它只是一个日期。我有一个只有日期的文件,当用户执行操作时,会将当前日期写入文件。然后该文件作为消息的一部分包含在视图中。在 Heroku 上写入文件失败。我不知道是因为 Heroku 上的“只读系统”,还是因为我弄乱了文件的路径(但它在本地工作)。

application_controller

def lastreminded
   File.open("app/views/families/_lastreminded.html.erb", "w").puts(Date.today.strftime("%B %d, %Y").to_s + ".") 
end

我不知道这是在错误的地方写了一个新文件,还是没有写一个文件,我不知道如何在 heroku 上检查它,但我在日志中看不到任何关于它的内容。

我正在使用 Rails 3,但计划很快升级。

4

1 回答 1

0

Heroku 使用只读文件系统,您可以尝试将文件放在 tmp 目录中,但它会被擦除。我建议使用 db 表。

另一方面,Rails 模型有一个 updated_at 属性,如果您的操作结束更新任何模型,您可以使用该属性。

于 2013-09-22T05:25:55.563 回答