2010-05-27 44 views
2

我有興趣獲得類似於37signals工作網站的預覽功能:http://jobs.37signals.com。以下是它如何工作的一些屏幕截圖。37signals作業預覽功能如何工作?

因此,假如你有郵政模型,其中第1步通常發生在新/創建視圖/動作,一個應該如何繼續執行步驟2預覽,然後預覽後,在進行第3步發佈郵寄/廣告?

在繼續步驟2(預覽)之前,他們是否實際上將廣告/帖子保存在數據庫中,但是設置了一個標誌(比如名爲preview set的布爾字段爲true)?它看起來像他們設置令牌參數,但我不知道它用於什麼)

我對此感興趣,因爲它似乎違反CRUD/REST,我認爲這將是很好的知道它是如何工作。

回答

1

他們可能使用的是state_machine所以在創建時它需要確認後確認需要支付。然後,他們只是抱着DB中的狀態與記錄

http://github.com/pluginaweek/state_machine

+0

狀態機看起來可能是這種功能的工作方式。謝謝! – slythic 2010-05-27 15:09:49

0

你可以很容易地使用一些jQuery的實際表單提交給服務器進行保存/發佈前寫的形式輸出到顯示一個div

+0

麥喜。感謝您的答案,雖然我不認爲他們通過jQuery做到了。如果他們這樣做,會很有趣。我認爲state_machine可能是他們這樣做的方式。 – slythic 2010-05-27 15:11:01

+0

這聽起來像一個可靠的方法,我也沒有給你一個答案,他們是如何做到的,只是一個簡單的解決方案來實現它自己。 – Jimmy 2010-05-27 15:47:02

+0

明白了!我一直避免直接與JS合作 - 不完全確定原因。 JS理論上是理想的,因爲它不必訪問數據庫。 *注意自己看看JS/jQuery * :-) – slythic 2010-05-27 19:44:48