2011-12-09 153 views
1

我正在創建MVC Web應用程序。MVC - 錯誤消息

在MVC(模型 - 視圖 - 控制器)的哪個部分,我應該保存我的錯誤消息,那可能出現哪裏出現錯誤,用戶應該閱讀它們?

形勢的時刻:

型號:

function f() 
{ 
    $data[error] = "Error message" 
    return $data; 
} 

查看:

echo $error 

回答

0

你可以儘可能拋出一個異常,在你的控制器,然後趕上他們在你的視圖處理器。

+0

例如我有**註冊**控制器,以及我如何向我的用戶顯示錯誤消息,例如('暱稱已註冊')等現在消息寫入模型中,但我認爲它不正確 – jurasarts

-1

一個通用的模式是:

定義模式

生成控制器

顯示查看

您可以在會話中存儲錯誤消息或直接從控制器傳遞它們以查看。

+3

編號在模型中生成。控制器中的生成。 –

+0

@NoICE Fair,但這並沒有增加任何內容。再看看我的答案,我會更新它以添加「定義在模型中」。 ...我剛剛做的:) –

3

我的意見是讓他們在模型的末尾。對我來說,控制器只是作爲一箇中間人,並且視圖不應該有太多的想法。

我的代碼中的VIEW只是在給出它需要顯示的數據後準備好前端輸出頁。它不必做任何思考,並且所有的驗證都在模型中,所以它只需要關注顯示結果,表單,信息,幫助,提示等。

CONTROLLER在我的代碼中(用戶的瀏覽器請求),模型(全部思考)和視圖(所有'顯示')。它不知道來自用戶的輸入有錯誤;它只是將輸入傳遞給模型。當模型完成後,控制器會將該輸出傳遞給視圖。

我的代碼中的MODEL負責做所有的想法。它接收來自用戶的輸入(通過控制器),並做它需要做的事情。對於它產生的任何或所有結果和/或錯誤,它只是將它傳遞給視圖(再次通過控制器),並期望視圖知道該做什麼:顯示數據。