2012-07-24 52 views
1

如果有人願意幫忙,我需要一些建議/想法:我有一個用於處理圖片的JavaScript界面​​。基本上是關於移動照片。完成後,圖像的位置將保存到Django表單中,然後保存爲數據庫,並將所有者保存爲當前用戶。現在訣竅是,我希望能夠允許非註冊用戶使用此界面進行遊戲,然後如果他們喜歡保存的結果並將其重定向到帳戶註冊頁面,那麼只有當表單實際上與他們的用戶一起保存時作爲所有者。django爲尚未註冊的用戶保存表格

現在想到的是在會話中保留表單的值,但我不知道一旦匿名用戶註冊併成爲另一個用戶會發生什麼情況。我也在考慮在註冊過程中使用'next'參數,URL中填充了get參數,這些參數是表單的內容,但是我不知道userena是否準備好允許這樣做。歡迎任何關於此的燈光。

回答

1

保存沒有用戶的對象並在會話(或(簽名)的cookie中存儲該對象的引用。如果用戶註冊,則用新創建的用戶更新所有對象。

+0

這就是我最終做的事情,我將對象傳遞給會話並將其作爲所有者分配給新用戶。 – Bastian 2012-07-25 14:06:26

2

好吧,我們在我們的網站上做了類似的事情。 當未註冊的用戶附上照片時,我們將對象保存到數據庫中,並分配用戶用表單來到頁面時生成的唯一散列。當用戶點擊提交時,我們在url中傳遞這個散列值,並在下一步中,當用戶想要註冊時,我們只需通過這個散列值從數據庫中獲取對象並將user_id賦值給它們。

另外,我們有一個cron作業,這不清理並刪除所有失物

附:對不起,我的英語我希望你能明白我的觀點

+0

謝謝,不用擔心你的英語,我完全理解你的觀點,好主意。 – Bastian 2012-07-24 10:57:12

1

另一種方法是將數據存儲在瀏覽器中(html5 localstorage和fallback等),並且只有在用戶註冊後纔將其插入到數據庫中。您需要確保這兩件事發生在同一個瀏覽器的「實例」內,但在服務器端更容易。

+0

謝謝,好主意。但實際上我沒有太多的前端,我寧願做服務器端。我絕對需要學習html5 :) – Bastian 2012-07-26 11:27:52