2012-04-01 40 views
0

我的要求是,我想要一個對象(tee)更新,如果沒有回合播放它。如果已經播放了回合,那麼我希望將對象(tee)歸檔(將活動屬性設置爲false)並將更新應用於對象的克隆。覆蓋更新,以更新或存檔在rails

我首先想到的是,我將覆蓋在像這樣的T恤模型的更新方法,並有一個處理歸檔,複製和更改的私有方法:

def update 
    if(self.rounds.count == 0) 
    super 
    else 
    #archive, clone and apply changes 
    archive_clone_and_change 
    return false 
    end 
end 

這種感覺髒,但因爲我回國對成功的檔案更新是錯誤的。當我嘗試將更改應用於archive_clone_and_change方法時,它也會變得棘手。

我應該在控制器而不是方法中做這個或者我的方法是否有意義?

回答

0

模型與控制器的決定,他們可以得到主觀的,但我會在控制器。它真的是應用於模型的邏輯,與模型本身沒有直接關係。

+0

謝謝......我花更多的時間思考這個問題,我認爲你是對的。感謝您花時間回答我的問題。 – cmaxwell 2012-04-01 15:43:26