2013-09-22 65 views
0

我有一個用戶使用應用程序上的按鈕執行的操作。我想在頁面上顯示一條消息,說明最後(由任何用戶)執行操作的時間。我需要將日期保存在某個地方,但不要整個表格,它只是一個日期。我有一個只有日期和用戶執行操作的文件,將當前日期寫入文件。然後該文件作爲消息的一部分包含在視圖中。 Heroku寫入文件失敗。我不知道是因爲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,但計劃儘快升級。

回答

0

Heroku使用只讀文件系統,您可以嘗試將該文件放在tmp目錄中,但它會被擦除。我建議去分貝表。

另一方面,如果您的操作結束更新任何模型,則Rails模型具有您可以使用的updated_at屬性。

+0

Drat!該操作不會更新任何模型。 –

+0

你有用戶嗎?任何加載在動作上的模型?還有,model.touch只是更新模型中的updated_at字段。 – calas

+0

謝謝,我會做model.touch來設置新的日期。感謝您的建議! –