使用Rails 3創建第一,登錄或註冊後
在通常的應用程序,表單纔會出現,如果用戶登錄後,可在控制器中,我們將在驗證運行另一個檢查,我們保存新的前記錄。
但是,無論他是否登錄,我都希望向所有人顯示該表單。當訪問者提交附件等表單時,它會檢查用戶是否已登錄。如果他不是,那麼將他重定向到登錄/註冊頁面,當他完成時,只有這樣才能保存新記錄。
我知道這可以通過create
和save
來實現,但有人可以更詳細地闡述如何在更清晰的解釋中達到此目的嗎?
使用Rails 3創建第一,登錄或註冊後
在通常的應用程序,表單纔會出現,如果用戶登錄後,可在控制器中,我們將在驗證運行另一個檢查,我們保存新的前記錄。
但是,無論他是否登錄,我都希望向所有人顯示該表單。當訪問者提交附件等表單時,它會檢查用戶是否已登錄。如果他不是,那麼將他重定向到登錄/註冊頁面,當他完成時,只有這樣才能保存新記錄。
我知道這可以通過create
和save
來實現,但有人可以更詳細地闡述如何在更清晰的解釋中達到此目的嗎?
運行定期作業來清理舊的未聲明表單數據。
嗯,在視圖中,你會顯示錶單總是沒有任何形式的登錄檢查。這裏棘手的部分是保存用戶在重定向到登錄之前發送的數據。
一個解決辦法是到後期數據保存在cookie中,然後將用戶重定向到登錄後在同一個頁面,引發再次創造
在像你描述你會做完全控制:
class ThingController
def create
if user_logged_in?
if cookie[:stuff]
# create the stuff from cookie and remove it
else
# create the stuff
end
else
# redirect him to login with a callback to this same place
end
end
end
堅持部分對我來說是新的。任何例子? – Victor
persists =='save' –