我有一個有狀態的模型。在每種狀態下,用戶可能希望對模型實例執行一系列操作。目前,我正在將模型狀態轉換爲使用視圖幫助器在視圖中表示的操作。Rails:如何在有狀態模型中表示可用的視圖操作?
事情是這樣的......模型:
Class Thing
def state_is_A?
state == 'A'
end
end
在助手:
def display_available_actions(thing)
if thing.state_is_A?
link_to <action1>
link_to <action2>
end
end
並在視圖:
<%= display_available_actions(@thing) %>
我不喜歡事實上模型狀態被翻譯成助手中的視圖動作。我希望將其融入到模型中。另一方面,模型和視圖看起來並不健康。
有沒有比我的方法更適合這種情況的Ruby或Rails成語?每個州應該是一個單獨的模式嗎?
您的方法非常好。我不會擔心這一點。 – Eimantas 2010-05-24 04:29:45